@rlucan/ui 14.2.5 → 16.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/esm2022/lib/action-button/action-button.component.mjs +99 -0
- package/esm2022/lib/action-icon/action-icon.component.mjs +37 -0
- package/esm2022/lib/autocomplete/autocomplete.component.mjs +391 -0
- package/esm2022/lib/avatar/avatar.component.mjs +34 -0
- package/esm2022/lib/button/button.component.mjs +57 -0
- package/esm2022/lib/checkbox/checkbox.component.mjs +39 -0
- package/{esm2020 → esm2022}/lib/checkbox-group/checkbox-group.component.mjs +6 -6
- package/esm2022/lib/currency/currency.component.mjs +151 -0
- package/esm2022/lib/date/date.component.mjs +68 -0
- package/{esm2020 → esm2022}/lib/dialog/dialog.component.mjs +5 -5
- package/esm2022/lib/directives/force-visibility/force-visibility.directive.mjs +104 -0
- package/esm2022/lib/editor/editor.component.mjs +119 -0
- package/{esm2020 → esm2022}/lib/elements/burger/burger.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/elements/expander/expander.component.mjs +4 -4
- package/{esm2020 → esm2022}/lib/elements/validation-message/validation-message.component.mjs +4 -4
- package/esm2022/lib/file/file.component.mjs +145 -0
- package/esm2022/lib/file-uploader/ui-file-uploader.component.mjs +405 -0
- package/esm2022/lib/input/input.component.mjs +265 -0
- package/esm2022/lib/input-autocomplete/input-autocomplete.component.mjs +277 -0
- package/esm2022/lib/layouts/base/ui-base-layout.component.mjs +22 -0
- package/esm2022/lib/layouts/base/ui-base.component.mjs +74 -0
- package/esm2022/lib/layouts/simple/ui-simple-layout.component.mjs +18 -0
- package/esm2022/lib/layouts/simple/ui-simple.component.mjs +166 -0
- package/{esm2020 → esm2022}/lib/radio/radio.component.mjs +4 -4
- package/esm2022/lib/radio-group/radio-group.component.mjs +53 -0
- package/esm2022/lib/select/select.component.mjs +126 -0
- package/{esm2020 → esm2022}/lib/services/message-box.service.mjs +10 -10
- package/{esm2020 → esm2022}/lib/services/toast.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/ui-file.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/services/ui-translate.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/submit-button/submit-button.component.mjs +4 -4
- package/esm2022/lib/table/table.component.mjs +97 -0
- package/esm2022/lib/text-area/text-area.component.mjs +46 -0
- package/esm2022/lib/ui.module.mjs +269 -0
- package/esm2022/public-api.mjs +35 -0
- package/fesm2022/rlucan-ui.mjs +3453 -0
- package/fesm2022/rlucan-ui.mjs.map +1 -0
- package/lib/action-button/action-button.component.d.ts +3 -7
- package/lib/action-icon/action-icon.component.d.ts +1 -1
- package/lib/autocomplete/autocomplete.component.d.ts +2 -2
- package/lib/avatar/avatar.component.d.ts +1 -1
- package/lib/button/button.component.d.ts +1 -1
- package/lib/checkbox/checkbox.component.d.ts +2 -2
- package/lib/checkbox-group/checkbox-group.component.d.ts +2 -2
- package/lib/currency/currency.component.d.ts +3 -2
- package/lib/date/date.component.d.ts +1 -1
- package/lib/dialog/dialog.component.d.ts +1 -1
- package/lib/directives/force-visibility/force-visibility.directive.d.ts +5 -3
- package/lib/editor/editor.component.d.ts +24 -0
- package/lib/elements/burger/burger.component.d.ts +1 -1
- package/lib/elements/expander/expander.component.d.ts +1 -1
- package/lib/elements/validation-message/validation-message.component.d.ts +1 -1
- package/lib/file/file.component.d.ts +1 -1
- package/lib/file-uploader/ui-file-uploader.component.d.ts +2 -2
- package/lib/input/input.component.d.ts +5 -4
- package/lib/input-autocomplete/input-autocomplete.component.d.ts +44 -0
- package/lib/{base → layouts/base}/ui-base-layout.component.d.ts +1 -1
- package/lib/{base → layouts/base}/ui-base.component.d.ts +1 -1
- package/lib/{simple → layouts/simple}/ui-simple-layout.component.d.ts +2 -1
- package/lib/{simple → layouts/simple}/ui-simple.component.d.ts +2 -1
- package/lib/radio/radio.component.d.ts +1 -1
- package/lib/radio-group/radio-group.component.d.ts +2 -2
- package/lib/select/select.component.d.ts +8 -4
- package/lib/services/toast.service.d.ts +1 -1
- package/lib/services/ui-file.service.d.ts +1 -1
- package/lib/submit-button/submit-button.component.d.ts +1 -1
- package/lib/table/table.component.d.ts +1 -1
- package/lib/text-area/text-area.component.d.ts +2 -2
- package/lib/ui.model.d.ts +2 -2
- package/lib/ui.module.d.ts +52 -49
- package/package.json +22 -24
- package/public-api.d.ts +2 -0
- package/scss/ui-defaults.scss +1 -1
- package/src/js/editorjs.mjs +9634 -0
- package/ui.scss +41 -14
- package/esm2020/lib/action-button/action-button.component.mjs +0 -99
- package/esm2020/lib/action-icon/action-icon.component.mjs +0 -37
- package/esm2020/lib/autocomplete/autocomplete.component.mjs +0 -391
- package/esm2020/lib/avatar/avatar.component.mjs +0 -34
- package/esm2020/lib/base/ui-base-layout.component.mjs +0 -22
- package/esm2020/lib/base/ui-base.component.mjs +0 -74
- package/esm2020/lib/button/button.component.mjs +0 -57
- package/esm2020/lib/checkbox/checkbox.component.mjs +0 -39
- package/esm2020/lib/currency/currency.component.mjs +0 -148
- package/esm2020/lib/date/date.component.mjs +0 -68
- package/esm2020/lib/directives/force-visibility/force-visibility.directive.mjs +0 -96
- package/esm2020/lib/file/file.component.mjs +0 -145
- package/esm2020/lib/file-uploader/ui-file-uploader.component.mjs +0 -394
- package/esm2020/lib/input/input.component.mjs +0 -258
- package/esm2020/lib/radio-group/radio-group.component.mjs +0 -53
- package/esm2020/lib/select/select.component.mjs +0 -91
- package/esm2020/lib/simple/ui-simple-layout.component.mjs +0 -15
- package/esm2020/lib/simple/ui-simple.component.mjs +0 -154
- package/esm2020/lib/table/table.component.mjs +0 -97
- package/esm2020/lib/text-area/text-area.component.mjs +0 -46
- package/esm2020/lib/ui.module.mjs +0 -255
- package/esm2020/public-api.mjs +0 -33
- package/fesm2015/rlucan-ui.mjs +0 -3017
- package/fesm2015/rlucan-ui.mjs.map +0 -1
- package/fesm2020/rlucan-ui.mjs +0 -2982
- package/fesm2020/rlucan-ui.mjs.map +0 -1
- /package/{esm2020 → esm2022}/lib/ui.model.mjs +0 -0
- /package/{esm2020 → esm2022}/rlucan-ui.mjs +0 -0
|
@@ -1,258 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Host, Input, Optional, Output, SkipSelf, ViewChild } from '@angular/core';
|
|
2
|
-
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import { UiSimpleComponent } from '../simple/ui-simple.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/forms";
|
|
6
|
-
import * as i2 from "@angular/common";
|
|
7
|
-
import * as i3 from "@angular/material/icon";
|
|
8
|
-
import * as i4 from "@angular/material/tooltip";
|
|
9
|
-
import * as i5 from "../simple/ui-simple-layout.component";
|
|
10
|
-
import * as i6 from "../action-icon/action-icon.component";
|
|
11
|
-
export class InputComponent extends UiSimpleComponent {
|
|
12
|
-
constructor(controlContainer) {
|
|
13
|
-
super(null, controlContainer);
|
|
14
|
-
this.controlContainer = controlContainer;
|
|
15
|
-
this.type = 'text';
|
|
16
|
-
this.clearButton = false;
|
|
17
|
-
this.activeIcons = true;
|
|
18
|
-
this.forceHasPrefix = false;
|
|
19
|
-
this.forceHasSuffix = false;
|
|
20
|
-
// @HostBinding('class.centered')
|
|
21
|
-
this.centered = false;
|
|
22
|
-
this.focusChanged = new EventEmitter();
|
|
23
|
-
this.keyPressed = new EventEmitter();
|
|
24
|
-
// control = new FormControl();
|
|
25
|
-
this.required = false;
|
|
26
|
-
this.hasFocus = false;
|
|
27
|
-
// this.componentFormControl = new FormControl();
|
|
28
|
-
// super();
|
|
29
|
-
// super(undefined, /*ngControl*/ translateService);
|
|
30
|
-
// super(control);
|
|
31
|
-
// console.log(control);
|
|
32
|
-
// if (control) {
|
|
33
|
-
// control.valueAccessor = this;
|
|
34
|
-
// }
|
|
35
|
-
// if (ngControl != null) {
|
|
36
|
-
// // Setting the value accessor directly (instead of using
|
|
37
|
-
// // the providers) to avoid running into a circular import.
|
|
38
|
-
// ngControl.valueAccessor = this;
|
|
39
|
-
// }
|
|
40
|
-
}
|
|
41
|
-
get hasPrefix() {
|
|
42
|
-
return (this.prefixIcon && this.prefixIcon.icon !== '') || this.prefix?.nativeElement?.innerText !== '' || this.forceHasPrefix;
|
|
43
|
-
}
|
|
44
|
-
get hasSuffix() {
|
|
45
|
-
return (this.suffixIcon && this.suffixIcon.icon !== '') || this.suffix?.nativeElement?.innerText !== '' || this.forceHasSuffix;
|
|
46
|
-
}
|
|
47
|
-
// control;
|
|
48
|
-
// onTouched = () => {};
|
|
49
|
-
// onChange = (value) => {};
|
|
50
|
-
// get showInvalid(): boolean {
|
|
51
|
-
// return true;
|
|
52
|
-
// // return this.control.touched && !!this.control.errors;
|
|
53
|
-
// }
|
|
54
|
-
// get validationMessage(): string {
|
|
55
|
-
// // console.log(this.control?.errors);
|
|
56
|
-
// let e: any = {code: 'Neznámá chyba'};
|
|
57
|
-
// const errors = this.control?.errors || {};
|
|
58
|
-
// Object.keys(errors).find(a => {
|
|
59
|
-
// e = {code: a, data: errors[a]};
|
|
60
|
-
// return true;
|
|
61
|
-
// });
|
|
62
|
-
// switch (e.code) {
|
|
63
|
-
// case 'required':
|
|
64
|
-
// return this.translateService.instant('ui.controls.validation.required');
|
|
65
|
-
// case 'email':
|
|
66
|
-
// return this.translateService.instant('ui.controls.validation.email');
|
|
67
|
-
// case 'matDatepickerParse':
|
|
68
|
-
// return this.translateService.instant('ui.controls.validation.matDatepickerParse');
|
|
69
|
-
// case 'maxlength':
|
|
70
|
-
// return this.translateService.instant('ui.controls.validation.maxlength', e.data);
|
|
71
|
-
// case 'minlength':
|
|
72
|
-
// return this.translateService.instant('ui.controls.validation.minlength', e.data);
|
|
73
|
-
// case 'positive':
|
|
74
|
-
// return this.translateService.instant(isNaN(Number(e.data)) ? 'ui.controls.validation.invalidNumber' : 'ui.controls.validation.positive');
|
|
75
|
-
// case 'custom':
|
|
76
|
-
// return this.translateService.instant(e.data);
|
|
77
|
-
// default:
|
|
78
|
-
// return this.translateService.instant(e.code);
|
|
79
|
-
// }
|
|
80
|
-
// }
|
|
81
|
-
get maxLenRequired() {
|
|
82
|
-
return true;
|
|
83
|
-
// return this.control.value && (this.control.value.length > (this.validators?.maxLength || 0));
|
|
84
|
-
}
|
|
85
|
-
get showClearButton() {
|
|
86
|
-
return this.clearButton && this.componentFormControl?.value !== '';
|
|
87
|
-
}
|
|
88
|
-
ngOnInit() {
|
|
89
|
-
super.ngOnInit();
|
|
90
|
-
// console.log('probiha vubec oninit?');
|
|
91
|
-
// if (this.ngControl) {
|
|
92
|
-
// console.log('from ngControl....??');
|
|
93
|
-
// if (this.formControl) {
|
|
94
|
-
// this.componentFormControl = this.formControl;
|
|
95
|
-
// } else {
|
|
96
|
-
// this.componentFormControl = this.ngControl.control as UntypedFormControl;
|
|
97
|
-
// }
|
|
98
|
-
// setTimeout(() => {
|
|
99
|
-
// this.applyValidators();
|
|
100
|
-
// });
|
|
101
|
-
// } else {
|
|
102
|
-
// const control = this.formControlName ?
|
|
103
|
-
// (this.controlContainer as FormGroupDirective).control.get(this.formControlName) : this.formControl;
|
|
104
|
-
// this.componentFormControl.setValidators(control.validator);
|
|
105
|
-
// this.componentFormControl.valueChanges.subscribe(v => console.log('onitin sub', v));
|
|
106
|
-
// control._componentFormControl = this.componentFormControl;
|
|
107
|
-
// if (control._markAsTouched === undefined) {
|
|
108
|
-
// // control._componentFormControl = this.componentFormControl;
|
|
109
|
-
// console.log('overriding markAsTouched for', this.formControlName);
|
|
110
|
-
// control._markAsTouched = control.markAsTouched;
|
|
111
|
-
// control.markAsTouched = ({onlySelf}: { onlySelf?: boolean } = {}): void => {
|
|
112
|
-
// console.log('marking as touched', this.componentFormControl.value, control.value, this.xxx.value, control._componentFormControl.value);
|
|
113
|
-
// control._markAsTouched({onlySelf});
|
|
114
|
-
// setTimeout(() => control._componentFormControl.markAsTouched(), 1000);
|
|
115
|
-
// }
|
|
116
|
-
// }
|
|
117
|
-
// }
|
|
118
|
-
}
|
|
119
|
-
clearValue() {
|
|
120
|
-
this.componentFormControl?.setValue('');
|
|
121
|
-
this.input?.nativeElement.focus();
|
|
122
|
-
}
|
|
123
|
-
focus() {
|
|
124
|
-
this.input?.nativeElement.focus();
|
|
125
|
-
}
|
|
126
|
-
onFocus(focus) {
|
|
127
|
-
this.hasFocus = focus;
|
|
128
|
-
this.focusChanged.emit(focus);
|
|
129
|
-
}
|
|
130
|
-
onKeypressed($event) {
|
|
131
|
-
this.keyPressed.emit($event);
|
|
132
|
-
}
|
|
133
|
-
// registerOnChange(onChange: any): void {
|
|
134
|
-
// this.onChange = onChange;
|
|
135
|
-
// }
|
|
136
|
-
//
|
|
137
|
-
// registerOnTouched(onTouched: any): void {
|
|
138
|
-
// this.onTouched = onTouched;
|
|
139
|
-
// }
|
|
140
|
-
// registerOnValidatorChange(fn: () => void): void {
|
|
141
|
-
// }
|
|
142
|
-
// setDisabledState(isDisabled: boolean): void {
|
|
143
|
-
// // isDisabled ? this.control.disable() : this.control.enable();
|
|
144
|
-
// }
|
|
145
|
-
// validate(control: AbstractControl): ValidationErrors | null {
|
|
146
|
-
// // this.control = control;
|
|
147
|
-
// // console.log(control, control.value, control.errors);
|
|
148
|
-
// if (this.value === 'error') {
|
|
149
|
-
// return { customError: 'muj error'}
|
|
150
|
-
// } else {
|
|
151
|
-
// return null;
|
|
152
|
-
// }
|
|
153
|
-
// // console.log('custom validate');
|
|
154
|
-
// // return null;
|
|
155
|
-
// }
|
|
156
|
-
//
|
|
157
|
-
// writeValue(obj: any): void {
|
|
158
|
-
// console.log('writevalue: ', obj);
|
|
159
|
-
// this.componentFormControl.setValue(obj);
|
|
160
|
-
// // this.value = obj;
|
|
161
|
-
// // this.control.setValue(obj);
|
|
162
|
-
// }
|
|
163
|
-
//
|
|
164
|
-
// registerOnChange(fn: any): void {
|
|
165
|
-
// }
|
|
166
|
-
//
|
|
167
|
-
// registerOnTouched(fn: any): void {
|
|
168
|
-
// }
|
|
169
|
-
//
|
|
170
|
-
// setDisabledState(isDisabled: boolean): void {
|
|
171
|
-
// }
|
|
172
|
-
// modelChange($event: any) {
|
|
173
|
-
// console.log($event);
|
|
174
|
-
// this.onTouched();
|
|
175
|
-
// this.onChange($event)
|
|
176
|
-
// }
|
|
177
|
-
// validate(control: AbstractControl): ValidationErrors | null {
|
|
178
|
-
// console.log(this.label, 'validate');
|
|
179
|
-
// return this.componentFormControl.errors;
|
|
180
|
-
// // return undefined;
|
|
181
|
-
// }
|
|
182
|
-
validate(control) {
|
|
183
|
-
if (this.parentFormControl) {
|
|
184
|
-
return this.parentFormControl._componentFormControl.errors;
|
|
185
|
-
}
|
|
186
|
-
// console.log('validate', this.componentFormControl.errors);
|
|
187
|
-
// // this.componentFormControl.setErrors( { custom: 'xxx' });
|
|
188
|
-
// this.componentFormControl.setErrors( this.componentFormControl.errors);
|
|
189
|
-
// console.log('validate 2', this.componentFormControl.errors);
|
|
190
|
-
// return this.componentFormControl.errors;
|
|
191
|
-
// console.log(this.componentFormControl.errors, control.errors, this.parentFormControl.errors, this);
|
|
192
|
-
// return this.componentFormControl.errors;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: InputComponent, deps: [{ token: i1.ControlContainer, host: true, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
196
|
-
InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: InputComponent, selector: "ui-input", inputs: { prefixIcon: "prefixIcon", suffixIcon: "suffixIcon", type: "type", clearButton: "clearButton", activeIcons: "activeIcons", forceHasPrefix: "forceHasPrefix", forceHasSuffix: "forceHasSuffix", centered: "centered" }, outputs: { focusChanged: "focusChanged", keyPressed: "keyPressed" }, providers: [
|
|
197
|
-
{
|
|
198
|
-
provide: NG_VALUE_ACCESSOR,
|
|
199
|
-
multi: true,
|
|
200
|
-
useExisting: InputComponent
|
|
201
|
-
},
|
|
202
|
-
{
|
|
203
|
-
provide: NG_VALIDATORS,
|
|
204
|
-
multi: true,
|
|
205
|
-
useExisting: InputComponent
|
|
206
|
-
}
|
|
207
|
-
], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "prefix", first: true, predicate: ["prefix"], descendants: true, static: true }, { propertyName: "suffix", first: true, predicate: ["suffix"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ui-simple-layout [ctx]=\"this\">\r\n\r\n<div class=\"control-container\" [ngClass]=\"{'has-suffix': hasSuffix, 'has-prefix': hasPrefix, 'has-clear-icon': showClearButton, 'active-icons': activeIcons, 'has-focus': hasFocus}\">\r\n <input #input [ngClass]=\"{centered: centered}\" [type]=\"type\" [formControl]=\"componentFormControl\" [placeholder]=\"placeholder\" (keydown)=\"onKeypressed($event)\" (focus)=\"onFocus(true)\" (blur)=\"onFocus(false)\" />\r\n <div #prefix><ng-content select=\"[slot=prefix]\"></ng-content></div>\r\n <div #suffix><ng-content select=\"[slot=suffix]\"></ng-content></div>\r\n <mat-icon *ngIf=\"prefixIcon\" class=\"prefix-icon\" [matTooltip]=\"prefixIcon.tooltip\">{{ prefixIcon.icon }}</mat-icon>\r\n <mat-icon *ngIf=\"suffixIcon\" class=\"suffix-icon\" [matTooltip]=\"suffixIcon.tooltip\">{{ suffixIcon.icon }}</mat-icon>\r\n <ui-action-icon [size]=\"'small'\" [color]=\"'warn'\" *ngIf=\"showClearButton\" (click)=\"clearValue()\" [matIcon]=\"'clear'\" class=\"clear-icon\"></ui-action-icon>\r\n</div>\r\n\r\n</ui-simple-layout>\r\n", styles: [":host{width:100%}:host .control-container{width:100%;position:relative}:host .control-container.has-prefix ::ng-deep input,:host .control-container.has-prefix ::ng-deep textarea,:host .control-container.has-prefix ::ng-deep .mat-mdc-select-trigger{padding-left:1.8em}:host .control-container.has-suffix ::ng-deep input,:host .control-container.has-suffix ::ng-deep textarea,:host .control-container.has-suffix ::ng-deep .mat-mdc-select-trigger{padding-right:1.8em}:host .control-container.has-suffix.has-clear-icon ::ng-deep input,:host .control-container.has-suffix.has-clear-icon ::ng-deep textarea,:host .control-container.has-suffix.has-clear-icon ::ng-deep .mat-mdc-select-trigger{padding-right:3.6em}:host .control-container.has-suffix.has-clear-icon ::ng-deep .clear-icon{right:1.4em!important}:host ::ng-deep [slot=suffix],:host ::ng-deep .clear-icon,:host ::ng-deep .suffix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);right:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=suffix]:not(.disabled),:host ::ng-deep .clear-icon:not(.disabled),:host ::ng-deep .suffix-icon:not(.disabled){cursor:pointer}:host ::ng-deep [slot=prefix],:host ::ng-deep .prefix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);left:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=prefix]:not(.disabled),:host ::ng-deep .prefix-icon:not(.disabled){cursor:pointer}:host ::ng-deep input,:host ::ng-deep textarea,:host ::ng-deep .mat-mdc-select-trigger{resize:none;width:100%;line-height:1.2em;font-size:1em;outline:none;border-style:solid;transition:border-color 333ms}:host ::ng-deep input.centered,:host ::ng-deep textarea.centered,:host ::ng-deep .mat-mdc-select-trigger.centered{text-align:center}:host ::ng-deep textarea.autoresize{box-sizing:content-box;width:calc(100% - 1.4em)}:host ::ng-deep ::ng-deep .mat-select-trigger,:host ::ng-deep ::ng-deep .mat-mdc-select-trigger{height:100%}:host ::ng-deep ::ng-deep .mat-select-value,:host ::ng-deep ::ng-deep .mat-mdc-select-value{vertical-align:middle}::ng-deep ui-input{display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i5.UiSimpleLayoutComponent, selector: "ui-simple-layout", inputs: ["ctx"] }, { kind: "component", type: i6.ActionIconComponent, selector: "ui-action-icon", inputs: ["size", "color", "disabled", "busy", "matIcon"] }] });
|
|
208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: InputComponent, decorators: [{
|
|
209
|
-
type: Component,
|
|
210
|
-
args: [{ selector: 'ui-input', providers: [
|
|
211
|
-
{
|
|
212
|
-
provide: NG_VALUE_ACCESSOR,
|
|
213
|
-
multi: true,
|
|
214
|
-
useExisting: InputComponent
|
|
215
|
-
},
|
|
216
|
-
{
|
|
217
|
-
provide: NG_VALIDATORS,
|
|
218
|
-
multi: true,
|
|
219
|
-
useExisting: InputComponent
|
|
220
|
-
}
|
|
221
|
-
], template: "<ui-simple-layout [ctx]=\"this\">\r\n\r\n<div class=\"control-container\" [ngClass]=\"{'has-suffix': hasSuffix, 'has-prefix': hasPrefix, 'has-clear-icon': showClearButton, 'active-icons': activeIcons, 'has-focus': hasFocus}\">\r\n <input #input [ngClass]=\"{centered: centered}\" [type]=\"type\" [formControl]=\"componentFormControl\" [placeholder]=\"placeholder\" (keydown)=\"onKeypressed($event)\" (focus)=\"onFocus(true)\" (blur)=\"onFocus(false)\" />\r\n <div #prefix><ng-content select=\"[slot=prefix]\"></ng-content></div>\r\n <div #suffix><ng-content select=\"[slot=suffix]\"></ng-content></div>\r\n <mat-icon *ngIf=\"prefixIcon\" class=\"prefix-icon\" [matTooltip]=\"prefixIcon.tooltip\">{{ prefixIcon.icon }}</mat-icon>\r\n <mat-icon *ngIf=\"suffixIcon\" class=\"suffix-icon\" [matTooltip]=\"suffixIcon.tooltip\">{{ suffixIcon.icon }}</mat-icon>\r\n <ui-action-icon [size]=\"'small'\" [color]=\"'warn'\" *ngIf=\"showClearButton\" (click)=\"clearValue()\" [matIcon]=\"'clear'\" class=\"clear-icon\"></ui-action-icon>\r\n</div>\r\n\r\n</ui-simple-layout>\r\n", styles: [":host{width:100%}:host .control-container{width:100%;position:relative}:host .control-container.has-prefix ::ng-deep input,:host .control-container.has-prefix ::ng-deep textarea,:host .control-container.has-prefix ::ng-deep .mat-mdc-select-trigger{padding-left:1.8em}:host .control-container.has-suffix ::ng-deep input,:host .control-container.has-suffix ::ng-deep textarea,:host .control-container.has-suffix ::ng-deep .mat-mdc-select-trigger{padding-right:1.8em}:host .control-container.has-suffix.has-clear-icon ::ng-deep input,:host .control-container.has-suffix.has-clear-icon ::ng-deep textarea,:host .control-container.has-suffix.has-clear-icon ::ng-deep .mat-mdc-select-trigger{padding-right:3.6em}:host .control-container.has-suffix.has-clear-icon ::ng-deep .clear-icon{right:1.4em!important}:host ::ng-deep [slot=suffix],:host ::ng-deep .clear-icon,:host ::ng-deep .suffix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);right:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=suffix]:not(.disabled),:host ::ng-deep .clear-icon:not(.disabled),:host ::ng-deep .suffix-icon:not(.disabled){cursor:pointer}:host ::ng-deep [slot=prefix],:host ::ng-deep .prefix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);left:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=prefix]:not(.disabled),:host ::ng-deep .prefix-icon:not(.disabled){cursor:pointer}:host ::ng-deep input,:host ::ng-deep textarea,:host ::ng-deep .mat-mdc-select-trigger{resize:none;width:100%;line-height:1.2em;font-size:1em;outline:none;border-style:solid;transition:border-color 333ms}:host ::ng-deep input.centered,:host ::ng-deep textarea.centered,:host ::ng-deep .mat-mdc-select-trigger.centered{text-align:center}:host ::ng-deep textarea.autoresize{box-sizing:content-box;width:calc(100% - 1.4em)}:host ::ng-deep ::ng-deep .mat-select-trigger,:host ::ng-deep ::ng-deep .mat-mdc-select-trigger{height:100%}:host ::ng-deep ::ng-deep .mat-select-value,:host ::ng-deep ::ng-deep .mat-mdc-select-value{vertical-align:middle}::ng-deep ui-input{display:block}\n"] }]
|
|
222
|
-
}], ctorParameters: function () { return [{ type: i1.ControlContainer, decorators: [{
|
|
223
|
-
type: Optional
|
|
224
|
-
}, {
|
|
225
|
-
type: Host
|
|
226
|
-
}, {
|
|
227
|
-
type: SkipSelf
|
|
228
|
-
}] }]; }, propDecorators: { prefixIcon: [{
|
|
229
|
-
type: Input
|
|
230
|
-
}], suffixIcon: [{
|
|
231
|
-
type: Input
|
|
232
|
-
}], type: [{
|
|
233
|
-
type: Input
|
|
234
|
-
}], clearButton: [{
|
|
235
|
-
type: Input
|
|
236
|
-
}], activeIcons: [{
|
|
237
|
-
type: Input
|
|
238
|
-
}], forceHasPrefix: [{
|
|
239
|
-
type: Input
|
|
240
|
-
}], forceHasSuffix: [{
|
|
241
|
-
type: Input
|
|
242
|
-
}], centered: [{
|
|
243
|
-
type: Input
|
|
244
|
-
}], input: [{
|
|
245
|
-
type: ViewChild,
|
|
246
|
-
args: ['input']
|
|
247
|
-
}], prefix: [{
|
|
248
|
-
type: ViewChild,
|
|
249
|
-
args: ['prefix', { static: true }]
|
|
250
|
-
}], suffix: [{
|
|
251
|
-
type: ViewChild,
|
|
252
|
-
args: ['suffix', { static: true }]
|
|
253
|
-
}], focusChanged: [{
|
|
254
|
-
type: Output
|
|
255
|
-
}], keyPressed: [{
|
|
256
|
-
type: Output
|
|
257
|
-
}] } });
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dC9pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2lucHV0L2lucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLElBQUksRUFDSixLQUFLLEVBRUwsUUFBUSxFQUNSLE1BQU0sRUFDTixRQUFRLEVBQ1IsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBcUMsYUFBYSxFQUFFLGlCQUFpQixFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBQ3ZILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7OztBQXNCbEUsTUFBTSxPQUFPLGNBQWUsU0FBUSxpQkFBaUI7SUF3R25ELFlBQXNELGdCQUFrQztRQVV0RixLQUFLLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFWc0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTVFL0UsU0FBSSxHQUFtQyxNQUFNLENBQUM7UUFDOUMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFaEMsaUNBQWlDO1FBQ3hCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFNaEIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQzNDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQVV6RCwrQkFBK0I7UUFFL0IsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBNkRmLGlEQUFpRDtRQUNqRCxXQUFXO1FBQ2IscURBQXFEO1FBQ25ELGtCQUFrQjtRQUNsQix3QkFBd0I7UUFDeEIsaUJBQWlCO1FBQ2pCLGtDQUFrQztRQUNsQyxJQUFJO1FBRUosMkJBQTJCO1FBQzNCLDZEQUE2RDtRQUM3RCwrREFBK0Q7UUFDL0Qsb0NBQW9DO1FBQ3BDLElBQUk7SUFDTixDQUFDO0lBdEZELElBQUksU0FBUztRQUNYLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsYUFBYSxFQUFFLFNBQVMsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUNqSSxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsU0FBUyxLQUFLLEVBQUUsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQ2pJLENBQUM7SUFTRCxXQUFXO0lBR1gsd0JBQXdCO0lBQ3hCLDRCQUE0QjtJQUU1QiwrQkFBK0I7SUFDL0IsaUJBQWlCO0lBQ2pCLDZEQUE2RDtJQUM3RCxJQUFJO0lBRUosb0NBQW9DO0lBQ3BDLDBDQUEwQztJQUMxQywwQ0FBMEM7SUFDMUMsK0NBQStDO0lBQy9DLG9DQUFvQztJQUNwQyxzQ0FBc0M7SUFDdEMsbUJBQW1CO0lBQ25CLFFBQVE7SUFDUixzQkFBc0I7SUFDdEIsdUJBQXVCO0lBQ3ZCLGlGQUFpRjtJQUNqRixvQkFBb0I7SUFDcEIsOEVBQThFO0lBQzlFLGlDQUFpQztJQUNqQywyRkFBMkY7SUFDM0Ysd0JBQXdCO0lBQ3hCLDBGQUEwRjtJQUMxRix3QkFBd0I7SUFDeEIsMEZBQTBGO0lBQzFGLHVCQUF1QjtJQUN2QixrSkFBa0o7SUFDbEoscUJBQXFCO0lBQ3JCLHNEQUFzRDtJQUN0RCxlQUFlO0lBQ2Ysc0RBQXNEO0lBQ3RELE1BQU07SUFDTixJQUFJO0lBRUosSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDO1FBQ1osZ0dBQWdHO0lBQ2xHLENBQUM7SUErQkQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxLQUFLLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0lBRU0sUUFBUTtRQUNiLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQix3Q0FBd0M7UUFDeEMsd0JBQXdCO1FBQ3hCLHlDQUF5QztRQUN6Qyw0QkFBNEI7UUFDNUIsb0RBQW9EO1FBQ3BELGFBQWE7UUFDYixnRkFBZ0Y7UUFDaEYsTUFBTTtRQUNOLHVCQUF1QjtRQUN2Qiw4QkFBOEI7UUFDOUIsUUFBUTtRQUNSLFdBQVc7UUFDWCwyQ0FBMkM7UUFDM0MsMEdBQTBHO1FBQzFHLGdFQUFnRTtRQUNoRSx5RkFBeUY7UUFDekYsK0RBQStEO1FBQy9ELGdEQUFnRDtRQUNoRCxvRUFBb0U7UUFDcEUseUVBQXlFO1FBQ3pFLHNEQUFzRDtRQUN0RCxtRkFBbUY7UUFDbkYsZ0pBQWdKO1FBQ2hKLDRDQUE0QztRQUM1QywrRUFBK0U7UUFDL0UsUUFBUTtRQUNSLE1BQU07UUFDTixJQUFJO0lBQ04sQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsb0JBQW9CLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFjO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBVztRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsMENBQTBDO0lBQzFDLDhCQUE4QjtJQUM5QixJQUFJO0lBQ0osRUFBRTtJQUNGLDRDQUE0QztJQUM1QyxnQ0FBZ0M7SUFDaEMsSUFBSTtJQUVKLG9EQUFvRDtJQUNwRCxJQUFJO0lBRUosZ0RBQWdEO0lBQ2hELG9FQUFvRTtJQUNwRSxJQUFJO0lBRUosZ0VBQWdFO0lBQ2hFLCtCQUErQjtJQUMvQiw0REFBNEQ7SUFDNUQsa0NBQWtDO0lBQ2xDLHlDQUF5QztJQUN6QyxhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLE1BQU07SUFDTix1Q0FBdUM7SUFDdkMsb0JBQW9CO0lBQ3BCLElBQUk7SUFDSixFQUFFO0lBQ0YsK0JBQStCO0lBQy9CLHNDQUFzQztJQUN0Qyw2Q0FBNkM7SUFDN0MseUJBQXlCO0lBQ3pCLG1DQUFtQztJQUNuQyxJQUFJO0lBQ0osRUFBRTtJQUNGLG9DQUFvQztJQUNwQyxJQUFJO0lBQ0osRUFBRTtJQUNGLHFDQUFxQztJQUNyQyxJQUFJO0lBQ0osRUFBRTtJQUNGLGdEQUFnRDtJQUNoRCxJQUFJO0lBRUosNkJBQTZCO0lBQzdCLHlCQUF5QjtJQUN6QixzQkFBc0I7SUFDdEIsMEJBQTBCO0lBQzFCLElBQUk7SUFFSixnRUFBZ0U7SUFDaEUseUNBQXlDO0lBQ3pDLDZDQUE2QztJQUM3Qyx5QkFBeUI7SUFDekIsSUFBSTtJQUVKLFFBQVEsQ0FBQyxPQUF3QjtRQUMvQixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7U0FDNUQ7UUFDRCw2REFBNkQ7UUFDN0QsOERBQThEO1FBQzlELDBFQUEwRTtRQUMxRSwrREFBK0Q7UUFDL0QsMkNBQTJDO1FBQzNDLHNHQUFzRztRQUN0RywyQ0FBMkM7SUFDN0MsQ0FBQzs7MkdBNVBVLGNBQWM7K0ZBQWQsY0FBYyx3VUFiZDtRQUNUO1lBQ0EsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixLQUFLLEVBQUUsSUFBSTtZQUNYLFdBQVcsRUFBRSxjQUFjO1NBQzVCO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsYUFBYTtZQUN0QixLQUFLLEVBQUUsSUFBSTtZQUNYLFdBQVcsRUFBRSxjQUFjO1NBQzVCO0tBQ0EsbVZDakNILGlqQ0FZQTsyRkR1QmEsY0FBYztrQkFuQjFCLFNBQVM7K0JBQ0UsVUFBVSxhQUtUO3dCQUNUOzRCQUNBLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsZ0JBQWdCO3lCQUM1Qjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsS0FBSyxFQUFFLElBQUk7NEJBQ1gsV0FBVyxnQkFBZ0I7eUJBQzVCO3FCQUNBOzswQkEwR1ksUUFBUTs7MEJBQUksSUFBSTs7MEJBQUksUUFBUTs0Q0E5RWhDLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVjLEtBQUs7c0JBQXhCLFNBQVM7dUJBQUMsT0FBTztnQkFDcUIsTUFBTTtzQkFBNUMsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNFLE1BQU07c0JBQTVDLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFM0IsWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdCxcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3B0aW9uYWwsXHJcbiAgT3V0cHV0LFxyXG4gIFNraXBTZWxmLFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIENvbnRyb2xDb250YWluZXIsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBVaVNpbXBsZUNvbXBvbmVudCB9IGZyb20gJy4uL3NpbXBsZS91aS1zaW1wbGUuY29tcG9uZW50JztcclxuXHJcbnR5cGUgUHJlZml4U3VmZml4ID0geyBpY29uOiBzdHJpbmcsIHRvb2x0aXA/OiBzdHJpbmcgfTtcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd1aS1pbnB1dCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LmNvbXBvbmVudC5odG1sJyxcclxuLy8gICBzdHlsZVVybHM6IFsgJy4vaW5wdXQuY29tcG9uZW50LnNjc3MnIF0sXHJcbiAgc3R5bGVVcmxzOiBbICcuLi9zaW1wbGUvdWktc2ltcGxlLWxheW91dC5jb21wb25lbnQuc2NzcycgXSxcclxuXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgIG11bHRpOiB0cnVlLFxyXG4gICAgdXNlRXhpc3Rpbmc6IElucHV0Q29tcG9uZW50XHJcbiAgfSxcclxuICB7XHJcbiAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgbXVsdGk6IHRydWUsXHJcbiAgICB1c2VFeGlzdGluZzogSW5wdXRDb21wb25lbnRcclxuICB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBVaVNpbXBsZUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25Jbml0IHsgLy8gfSwgQ29udHJvbFZhbHVlQWNjZXNzb3IgeyAvLyB9LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHsgLy8gfSwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIC8vIFVpU2ltcGxlQ29tcG9uZW50ID0gSW5wdXRDb21wb25lbnQ7XHJcblxyXG4gIC8vIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJyc7XHJcbiAgLy8gQElucHV0KCkgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICAvLyBASW5wdXQoKSB1c2VJbnB1dE1lc3NhZ2VzOiAnbmV2ZXInIHwgJ2Fsd2F5cycgfCAnb25kZW1hbmQnID0gJ2Fsd2F5cyc7XHJcbiAgLy8gQElucHV0KCkgaGludDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIC8vIEBJbnB1dCgpIHZhbGlkYXRvcnM6IFVpVmFsaWRhdG9ycyB8IHVuZGVmaW5lZDtcclxuICAvLyBASW5wdXQoKSBzaXplOiAnc21hbGwnIHwgJ3NtYWxsZXInIHwgJ25vcm1hbCcgfCAnbGFyZ2VyJyB8ICdsYXJnZScgPSAnbm9ybWFsJztcclxuICAvLyBASW5wdXQoKSBmb3JtQ29udHJvbE5hbWU7XHJcblxyXG4gIC8vIGNvbXBvbmVudEZvcm1Db250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgLy9cclxuICAvLyBuZ0NvbnRyb2w6IE5nQ29udHJvbDtcclxuICAvL1xyXG4gIC8vIEBJbnB1dCgpIHZhbGlkYXRvcnM6IFVpVmFsaWRhdG9ycyB8IHVuZGVmaW5lZDtcclxuICAvLyBASW5wdXQoKSBmb3JtQ29udHJvbE5hbWU7XHJcbiAgLy9cclxuICAvLyBASW5wdXQoKSBwbGFjZWhvbGRlciA9ICcnO1xyXG4gIC8vIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgLy8gQElucHV0KCkgdXNlSW5wdXRNZXNzYWdlczogJ25ldmVyJyB8ICdhbHdheXMnIHwgJ29uZGVtYW5kJyA9ICdhbHdheXMnO1xyXG4gIC8vIEBJbnB1dCgpIGhpbnQ/OiBzdHJpbmc7XHJcbiAgLy8gQElucHV0KCkgc2l6ZTogJ3NtYWxsJyB8ICdzbWFsbGVyJyB8ICdub3JtYWwnIHwgJ2xhcmdlcicgfCAnbGFyZ2UnID0gJ25vcm1hbCc7XHJcblxyXG4gIEBJbnB1dCgpIHByZWZpeEljb246IFByZWZpeFN1ZmZpeDtcclxuICBASW5wdXQoKSBzdWZmaXhJY29uOiBQcmVmaXhTdWZmaXg7XHJcbiAgQElucHV0KCkgdHlwZTogJ3RleHQnIHwgJ251bWJlcicgfCAncGFzc3dvcmQnID0gJ3RleHQnO1xyXG4gIEBJbnB1dCgpIGNsZWFyQnV0dG9uID0gZmFsc2U7XHJcbiAgQElucHV0KCkgYWN0aXZlSWNvbnMgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGZvcmNlSGFzUHJlZml4ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZm9yY2VIYXNTdWZmaXggPSBmYWxzZTtcclxuXHJcbiAgLy8gQEhvc3RCaW5kaW5nKCdjbGFzcy5jZW50ZXJlZCcpXHJcbiAgQElucHV0KCkgY2VudGVyZWQgPSBmYWxzZTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dDogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcclxuICBAVmlld0NoaWxkKCdwcmVmaXgnLCB7IHN0YXRpYzogdHJ1ZSB9KSBwcmVmaXg6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XHJcbiAgQFZpZXdDaGlsZCgnc3VmZml4JywgeyBzdGF0aWM6IHRydWUgfSkgc3VmZml4OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xyXG5cclxuICBAT3V0cHV0KCkgZm9jdXNDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG4gIEBPdXRwdXQoKSBrZXlQcmVzc2VkID0gbmV3IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50PigpO1xyXG5cclxuICBnZXQgaGFzUHJlZml4KCkge1xyXG4gICAgcmV0dXJuICh0aGlzLnByZWZpeEljb24gJiYgdGhpcy5wcmVmaXhJY29uLmljb24gIT09ICcnKSB8fCB0aGlzLnByZWZpeD8ubmF0aXZlRWxlbWVudD8uaW5uZXJUZXh0ICE9PSAnJyB8fCB0aGlzLmZvcmNlSGFzUHJlZml4O1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc1N1ZmZpeCgpIHtcclxuICAgIHJldHVybiAodGhpcy5zdWZmaXhJY29uICYmIHRoaXMuc3VmZml4SWNvbi5pY29uICE9PSAnJykgfHwgdGhpcy5zdWZmaXg/Lm5hdGl2ZUVsZW1lbnQ/LmlubmVyVGV4dCAhPT0gJycgfHwgdGhpcy5mb3JjZUhhc1N1ZmZpeDtcclxuICB9XHJcblxyXG4gIC8vIGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcclxuXHJcbiAgcmVxdWlyZWQgPSBmYWxzZTtcclxuICBoYXNGb2N1cyA9IGZhbHNlO1xyXG5cclxuICB2YWx1ZTogc3RyaW5nO1xyXG5cclxuICAvLyBjb250cm9sO1xyXG5cclxuXHJcbiAgLy8gb25Ub3VjaGVkID0gKCkgPT4ge307XHJcbiAgLy8gb25DaGFuZ2UgPSAodmFsdWUpID0+IHt9O1xyXG5cclxuICAvLyBnZXQgc2hvd0ludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgLy8gICByZXR1cm4gdHJ1ZTtcclxuICAvLyAgIC8vIHJldHVybiB0aGlzLmNvbnRyb2wudG91Y2hlZCAmJiAhIXRoaXMuY29udHJvbC5lcnJvcnM7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBnZXQgdmFsaWRhdGlvbk1lc3NhZ2UoKTogc3RyaW5nIHtcclxuICAvLyAgIC8vIGNvbnNvbGUubG9nKHRoaXMuY29udHJvbD8uZXJyb3JzKTtcclxuICAvLyAgIGxldCBlOiBhbnkgPSB7Y29kZTogJ05lem7DoW3DoSBjaHliYSd9O1xyXG4gIC8vICAgY29uc3QgZXJyb3JzID0gdGhpcy5jb250cm9sPy5lcnJvcnMgfHwge307XHJcbiAgLy8gICBPYmplY3Qua2V5cyhlcnJvcnMpLmZpbmQoYSA9PiB7XHJcbiAgLy8gICAgIGUgPSB7Y29kZTogYSwgZGF0YTogZXJyb3JzW2FdfTtcclxuICAvLyAgICAgcmV0dXJuIHRydWU7XHJcbiAgLy8gICB9KTtcclxuICAvLyAgIHN3aXRjaCAoZS5jb2RlKSB7XHJcbiAgLy8gICAgIGNhc2UgJ3JlcXVpcmVkJzpcclxuICAvLyAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3VpLmNvbnRyb2xzLnZhbGlkYXRpb24ucmVxdWlyZWQnKTtcclxuICAvLyAgICAgY2FzZSAnZW1haWwnOlxyXG4gIC8vICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgndWkuY29udHJvbHMudmFsaWRhdGlvbi5lbWFpbCcpO1xyXG4gIC8vICAgICBjYXNlICdtYXREYXRlcGlja2VyUGFyc2UnOlxyXG4gIC8vICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgndWkuY29udHJvbHMudmFsaWRhdGlvbi5tYXREYXRlcGlja2VyUGFyc2UnKTtcclxuICAvLyAgICAgY2FzZSAnbWF4bGVuZ3RoJzpcclxuICAvLyAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3VpLmNvbnRyb2xzLnZhbGlkYXRpb24ubWF4bGVuZ3RoJywgZS5kYXRhKTtcclxuICAvLyAgICAgY2FzZSAnbWlubGVuZ3RoJzpcclxuICAvLyAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3VpLmNvbnRyb2xzLnZhbGlkYXRpb24ubWlubGVuZ3RoJywgZS5kYXRhKTtcclxuICAvLyAgICAgY2FzZSAncG9zaXRpdmUnOlxyXG4gIC8vICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChpc05hTihOdW1iZXIoZS5kYXRhKSkgPyAndWkuY29udHJvbHMudmFsaWRhdGlvbi5pbnZhbGlkTnVtYmVyJyA6ICd1aS5jb250cm9scy52YWxpZGF0aW9uLnBvc2l0aXZlJyk7XHJcbiAgLy8gICAgIGNhc2UgJ2N1c3RvbSc6XHJcbiAgLy8gICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGUuZGF0YSk7XHJcbiAgLy8gICAgIGRlZmF1bHQ6XHJcbiAgLy8gICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGUuY29kZSk7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuICBnZXQgbWF4TGVuUmVxdWlyZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICAgIC8vIHJldHVybiB0aGlzLmNvbnRyb2wudmFsdWUgJiYgKHRoaXMuY29udHJvbC52YWx1ZS5sZW5ndGggPiAodGhpcy52YWxpZGF0b3JzPy5tYXhMZW5ndGggfHwgMCkpO1xyXG4gIH1cclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBIb3N0KCkgQFNraXBTZWxmKCkgcHJvdGVjdGVkIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIsXHJcbiAgICAvKlxyXG4gICAgYnVkIHByZXMgQE9wdGlvbmFsKCkgQFNlbGYoKSBwdWJsaWMgY29udHJvbDogTmdDb250cm9sIGEgY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcyA9PiB6dHJhdGltZSBhbGUgY3VzdG9tIHZhbGlkYWNpXHJcbiAgICBhbmVibyBwcmVzIERJIGpha28gcHJvdmlkZXJzIGEgcGFrIHRoaXMuY29udHJvbCA9IHZpeiBuZ09uSW5pdCAtIHBva3VkIGplaiB2dWJlYyBwb3RyZWJ1amVtXHJcblxyXG4gICAgICovXHJcbiAgICAvLyBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgLy8gQE9wdGlvbmFsKCkgQFNlbGYoKSBwdWJsaWMgY29udHJvbDogTmdDb250cm9sLFxyXG4gICAgLy8gQFNlbGYoKSBwcml2YXRlIGNvbnRyb2xEaXJlY3RpdmU6IE5nQ29udHJvbCxcclxuICAgKSB7XHJcbiAgICBzdXBlcihudWxsLCBjb250cm9sQ29udGFpbmVyKTtcclxuXHJcbiAgICAvLyB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XHJcbiAgICAvLyBzdXBlcigpO1xyXG4gIC8vICBzdXBlcih1bmRlZmluZWQsIC8qbmdDb250cm9sKi8gdHJhbnNsYXRlU2VydmljZSk7XHJcbiAgICAvLyBzdXBlcihjb250cm9sKTtcclxuICAgIC8vIGNvbnNvbGUubG9nKGNvbnRyb2wpO1xyXG4gICAgLy8gaWYgKGNvbnRyb2wpIHtcclxuICAgIC8vICAgY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcclxuICAgIC8vIH1cclxuXHJcbiAgICAvLyBpZiAobmdDb250cm9sICE9IG51bGwpIHtcclxuICAgIC8vICAgLy8gU2V0dGluZyB0aGUgdmFsdWUgYWNjZXNzb3IgZGlyZWN0bHkgKGluc3RlYWQgb2YgdXNpbmdcclxuICAgIC8vICAgLy8gdGhlIHByb3ZpZGVycykgdG8gYXZvaWQgcnVubmluZyBpbnRvIGEgY2lyY3VsYXIgaW1wb3J0LlxyXG4gICAgLy8gICBuZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICBnZXQgc2hvd0NsZWFyQnV0dG9uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY2xlYXJCdXR0b24gJiYgdGhpcy5jb21wb25lbnRGb3JtQ29udHJvbD8udmFsdWUgIT09ICcnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgIC8vIGNvbnNvbGUubG9nKCdwcm9iaWhhIHZ1YmVjIG9uaW5pdD8nKTtcclxuICAgIC8vIGlmICh0aGlzLm5nQ29udHJvbCkge1xyXG4gICAgLy8gICBjb25zb2xlLmxvZygnZnJvbSBuZ0NvbnRyb2wuLi4uPz8nKTtcclxuICAgIC8vICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wpIHtcclxuICAgIC8vICAgICB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sID0gdGhpcy5mb3JtQ29udHJvbDtcclxuICAgIC8vICAgfSBlbHNlIHtcclxuICAgIC8vICAgICB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sID0gdGhpcy5uZ0NvbnRyb2wuY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgICAvLyAgIH1cclxuICAgIC8vICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAvLyAgICAgdGhpcy5hcHBseVZhbGlkYXRvcnMoKTtcclxuICAgIC8vICAgfSk7XHJcbiAgICAvLyB9IGVsc2Uge1xyXG4gICAgLy8gICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtQ29udHJvbE5hbWUgP1xyXG4gICAgLy8gICAgICh0aGlzLmNvbnRyb2xDb250YWluZXIgYXMgRm9ybUdyb3VwRGlyZWN0aXZlKS5jb250cm9sLmdldCh0aGlzLmZvcm1Db250cm9sTmFtZSkgOiB0aGlzLmZvcm1Db250cm9sO1xyXG4gICAgLy8gICB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sLnNldFZhbGlkYXRvcnMoY29udHJvbC52YWxpZGF0b3IpO1xyXG4gICAgLy8gICB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodiA9PiBjb25zb2xlLmxvZygnb25pdGluIHN1YicsIHYpKTtcclxuICAgIC8vICAgY29udHJvbC5fY29tcG9uZW50Rm9ybUNvbnRyb2wgPSB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sO1xyXG4gICAgLy8gICBpZiAoY29udHJvbC5fbWFya0FzVG91Y2hlZCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAvLyAgICAgLy8gY29udHJvbC5fY29tcG9uZW50Rm9ybUNvbnRyb2wgPSB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sO1xyXG4gICAgLy8gICAgIGNvbnNvbGUubG9nKCdvdmVycmlkaW5nIG1hcmtBc1RvdWNoZWQgZm9yJywgdGhpcy5mb3JtQ29udHJvbE5hbWUpO1xyXG4gICAgLy8gICAgIGNvbnRyb2wuX21hcmtBc1RvdWNoZWQgPSBjb250cm9sLm1hcmtBc1RvdWNoZWQ7XHJcbiAgICAvLyAgICAgY29udHJvbC5tYXJrQXNUb3VjaGVkID0gKHtvbmx5U2VsZn06IHsgb25seVNlbGY/OiBib29sZWFuIH0gPSB7fSk6IHZvaWQgPT4ge1xyXG4gICAgLy8gICAgICAgY29uc29sZS5sb2coJ21hcmtpbmcgYXMgdG91Y2hlZCcsIHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2wudmFsdWUsIGNvbnRyb2wudmFsdWUsIHRoaXMueHh4LnZhbHVlLCBjb250cm9sLl9jb21wb25lbnRGb3JtQ29udHJvbC52YWx1ZSk7XHJcbiAgICAvLyAgICAgICBjb250cm9sLl9tYXJrQXNUb3VjaGVkKHtvbmx5U2VsZn0pO1xyXG4gICAgLy8gICAgICAgc2V0VGltZW91dCgoKSA9PiBjb250cm9sLl9jb21wb25lbnRGb3JtQ29udHJvbC5tYXJrQXNUb3VjaGVkKCksIDEwMDApO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgfVxyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgY2xlYXJWYWx1ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2w/LnNldFZhbHVlKCcnKTtcclxuICAgIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIGZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gIH1cclxuXHJcbiAgb25Gb2N1cyhmb2N1czogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5oYXNGb2N1cyA9IGZvY3VzO1xyXG4gICAgdGhpcy5mb2N1c0NoYW5nZWQuZW1pdChmb2N1cyk7XHJcbiAgfVxyXG5cclxuICBvbktleXByZXNzZWQoJGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMua2V5UHJlc3NlZC5lbWl0KCRldmVudCk7XHJcbiAgfVxyXG5cclxuICAvLyByZWdpc3Rlck9uQ2hhbmdlKG9uQ2hhbmdlOiBhbnkpOiB2b2lkIHtcclxuICAvLyAgIHRoaXMub25DaGFuZ2UgPSBvbkNoYW5nZTtcclxuICAvLyB9XHJcbiAgLy9cclxuICAvLyByZWdpc3Rlck9uVG91Y2hlZChvblRvdWNoZWQ6IGFueSk6IHZvaWQge1xyXG4gIC8vICAgdGhpcy5vblRvdWNoZWQgPSBvblRvdWNoZWQ7XHJcbiAgLy8gfVxyXG5cclxuICAvLyByZWdpc3Rlck9uVmFsaWRhdG9yQ2hhbmdlKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAvLyAgIC8vIGlzRGlzYWJsZWQgPyB0aGlzLmNvbnRyb2wuZGlzYWJsZSgpIDogdGhpcy5jb250cm9sLmVuYWJsZSgpO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG4gIC8vICAgLy8gdGhpcy5jb250cm9sID0gY29udHJvbDtcclxuICAvLyAgIC8vIGNvbnNvbGUubG9nKGNvbnRyb2wsIGNvbnRyb2wudmFsdWUsIGNvbnRyb2wuZXJyb3JzKTtcclxuICAvLyAgIGlmICh0aGlzLnZhbHVlID09PSAnZXJyb3InKSB7XHJcbiAgLy8gICAgIHJldHVybiB7IGN1c3RvbUVycm9yOiAnbXVqIGVycm9yJ31cclxuICAvLyAgIH0gZWxzZSB7XHJcbiAgLy8gICAgIHJldHVybiBudWxsO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgLy8gY29uc29sZS5sb2coJ2N1c3RvbSB2YWxpZGF0ZScpO1xyXG4gIC8vICAgLy8gcmV0dXJuIG51bGw7XHJcbiAgLy8gfVxyXG4gIC8vXHJcbiAgLy8gd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xyXG4gIC8vICAgY29uc29sZS5sb2coJ3dyaXRldmFsdWU6ICcsIG9iaik7XHJcbiAgLy8gICB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sLnNldFZhbHVlKG9iaik7XHJcbiAgLy8gICAvLyB0aGlzLnZhbHVlID0gb2JqO1xyXG4gIC8vICAgLy8gdGhpcy5jb250cm9sLnNldFZhbHVlKG9iaik7XHJcbiAgLy8gfVxyXG4gIC8vXHJcbiAgLy8gcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgLy8gfVxyXG4gIC8vXHJcbiAgLy8gcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gIC8vIH1cclxuICAvL1xyXG4gIC8vIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gbW9kZWxDaGFuZ2UoJGV2ZW50OiBhbnkpIHtcclxuICAvLyAgIGNvbnNvbGUubG9nKCRldmVudCk7XHJcbiAgLy8gICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gIC8vICAgdGhpcy5vbkNoYW5nZSgkZXZlbnQpXHJcbiAgLy8gfVxyXG5cclxuICAvLyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XHJcbiAgLy8gICBjb25zb2xlLmxvZyh0aGlzLmxhYmVsLCAndmFsaWRhdGUnKTtcclxuICAvLyAgIHJldHVybiB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sLmVycm9ycztcclxuICAvLyAgIC8vIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgLy8gfVxyXG5cclxuICB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XHJcbiAgICBpZiAodGhpcy5wYXJlbnRGb3JtQ29udHJvbCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5wYXJlbnRGb3JtQ29udHJvbC5fY29tcG9uZW50Rm9ybUNvbnRyb2wuZXJyb3JzO1xyXG4gICAgfVxyXG4gICAgLy8gY29uc29sZS5sb2coJ3ZhbGlkYXRlJywgdGhpcy5jb21wb25lbnRGb3JtQ29udHJvbC5lcnJvcnMpO1xyXG4gICAgLy8gLy8gdGhpcy5jb21wb25lbnRGb3JtQ29udHJvbC5zZXRFcnJvcnMoIHsgY3VzdG9tOiAneHh4JyB9KTtcclxuICAgIC8vIHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2wuc2V0RXJyb3JzKCB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sLmVycm9ycyk7XHJcbiAgICAvLyBjb25zb2xlLmxvZygndmFsaWRhdGUgMicsIHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2wuZXJyb3JzKTtcclxuICAgIC8vIHJldHVybiB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sLmVycm9ycztcclxuICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2wuZXJyb3JzLCBjb250cm9sLmVycm9ycywgdGhpcy5wYXJlbnRGb3JtQ29udHJvbC5lcnJvcnMsIHRoaXMpO1xyXG4gICAgLy8gcmV0dXJuIHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2wuZXJyb3JzO1xyXG4gIH1cclxufVxyXG5cclxuIiwiPHVpLXNpbXBsZS1sYXlvdXQgW2N0eF09XCJ0aGlzXCI+XHJcblxyXG48ZGl2IGNsYXNzPVwiY29udHJvbC1jb250YWluZXJcIiBbbmdDbGFzc109XCJ7J2hhcy1zdWZmaXgnOiBoYXNTdWZmaXgsICdoYXMtcHJlZml4JzogaGFzUHJlZml4LCAnaGFzLWNsZWFyLWljb24nOiBzaG93Q2xlYXJCdXR0b24sICdhY3RpdmUtaWNvbnMnOiBhY3RpdmVJY29ucywgJ2hhcy1mb2N1cyc6IGhhc0ZvY3VzfVwiPlxyXG4gIDxpbnB1dCAjaW5wdXQgW25nQ2xhc3NdPVwie2NlbnRlcmVkOiBjZW50ZXJlZH1cIiBbdHlwZV09XCJ0eXBlXCIgW2Zvcm1Db250cm9sXT1cImNvbXBvbmVudEZvcm1Db250cm9sXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgKGtleWRvd24pPVwib25LZXlwcmVzc2VkKCRldmVudClcIiAoZm9jdXMpPVwib25Gb2N1cyh0cnVlKVwiIChibHVyKT1cIm9uRm9jdXMoZmFsc2UpXCIgLz5cclxuICA8ZGl2ICNwcmVmaXg+PG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Nsb3Q9cHJlZml4XVwiPjwvbmctY29udGVudD48L2Rpdj5cclxuICA8ZGl2ICNzdWZmaXg+PG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Nsb3Q9c3VmZml4XVwiPjwvbmctY29udGVudD48L2Rpdj5cclxuICA8bWF0LWljb24gKm5nSWY9XCJwcmVmaXhJY29uXCIgY2xhc3M9XCJwcmVmaXgtaWNvblwiIFttYXRUb29sdGlwXT1cInByZWZpeEljb24udG9vbHRpcFwiPnt7IHByZWZpeEljb24uaWNvbiB9fTwvbWF0LWljb24+XHJcbiAgPG1hdC1pY29uICpuZ0lmPVwic3VmZml4SWNvblwiIGNsYXNzPVwic3VmZml4LWljb25cIiBbbWF0VG9vbHRpcF09XCJzdWZmaXhJY29uLnRvb2x0aXBcIj57eyBzdWZmaXhJY29uLmljb24gfX08L21hdC1pY29uPlxyXG4gIDx1aS1hY3Rpb24taWNvbiBbc2l6ZV09XCInc21hbGwnXCIgW2NvbG9yXT1cIid3YXJuJ1wiICpuZ0lmPVwic2hvd0NsZWFyQnV0dG9uXCIgKGNsaWNrKT1cImNsZWFyVmFsdWUoKVwiIFttYXRJY29uXT1cIidjbGVhcidcIiBjbGFzcz1cImNsZWFyLWljb25cIj48L3VpLWFjdGlvbi1pY29uPlxyXG48L2Rpdj5cclxuXHJcbjwvdWktc2ltcGxlLWxheW91dD5cclxuIl19
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Optional, Self } from '@angular/core';
|
|
2
|
-
import { UiSimpleComponent } from '../simple/ui-simple.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/forms";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "@angular/material/radio";
|
|
7
|
-
import * as i4 from "../simple/ui-simple-layout.component";
|
|
8
|
-
export class RadioGroupComponent extends UiSimpleComponent {
|
|
9
|
-
constructor(control) {
|
|
10
|
-
super(control);
|
|
11
|
-
this.control = control;
|
|
12
|
-
this.id = Math.round(Math.random() * 999999);
|
|
13
|
-
this.displayAttribute = 'name';
|
|
14
|
-
this.groupName = 'radio-' + this.id;
|
|
15
|
-
this.optionEnabled = (option) => true;
|
|
16
|
-
}
|
|
17
|
-
// ngOnInit(): void {
|
|
18
|
-
// super.ngOnInit();
|
|
19
|
-
// }
|
|
20
|
-
ngOnChanges(changes) {
|
|
21
|
-
super.ngOnChanges(changes);
|
|
22
|
-
if (changes.options) {
|
|
23
|
-
this.cbxs = [];
|
|
24
|
-
changes.options.currentValue.forEach(cv => {
|
|
25
|
-
this.cbxs.push({
|
|
26
|
-
value: this.valueAttribute ? cv[this.valueAttribute] : cv,
|
|
27
|
-
label: cv[this.displayAttribute]
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
RadioGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: RadioGroupComponent, deps: [{ token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
-
RadioGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: RadioGroupComponent, selector: "ui-radio-group", inputs: { options: "options", displayAttribute: "displayAttribute", valueAttribute: "valueAttribute", groupName: "groupName", optionEnabled: "optionEnabled" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ui-simple-layout [ctx]=\"this\">\r\n\r\n <mat-radio-group [formControl]=\"componentFormControl\" [name]=\"groupName\" [class]=\"size\">\r\n\r\n <mat-radio-button *ngFor=\"let cbx of cbxs\" [value]=\"cbx.value\" >{{cbx.label}}</mat-radio-button>\r\n\r\n </mat-radio-group>\r\n\r\n</ui-simple-layout>\r\n", styles: [":host mat-radio-group{display:flex;flex-direction:column}:host mat-radio-button{margin-top:.2em;margin-bottom:.2em}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "component", type: i4.UiSimpleLayoutComponent, selector: "ui-simple-layout", inputs: ["ctx"] }] });
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: RadioGroupComponent, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
args: [{ selector: 'ui-radio-group', template: "<ui-simple-layout [ctx]=\"this\">\r\n\r\n <mat-radio-group [formControl]=\"componentFormControl\" [name]=\"groupName\" [class]=\"size\">\r\n\r\n <mat-radio-button *ngFor=\"let cbx of cbxs\" [value]=\"cbx.value\" >{{cbx.label}}</mat-radio-button>\r\n\r\n </mat-radio-group>\r\n\r\n</ui-simple-layout>\r\n", styles: [":host mat-radio-group{display:flex;flex-direction:column}:host mat-radio-button{margin-top:.2em;margin-bottom:.2em}\n"] }]
|
|
38
|
-
}], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
|
|
39
|
-
type: Optional
|
|
40
|
-
}, {
|
|
41
|
-
type: Self
|
|
42
|
-
}] }]; }, propDecorators: { options: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], displayAttribute: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}], valueAttribute: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], groupName: [{
|
|
49
|
-
type: Input
|
|
50
|
-
}], optionEnabled: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9yYWRpby1ncm91cC9yYWRpby1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3JhZGlvLWdyb3VwL3JhZGlvLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixRQUFRLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7O0FBZWxFLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxpQkFBaUI7SUFheEQsWUFBdUMsT0FBa0I7UUFDdkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRHNCLFlBQU8sR0FBUCxPQUFPLENBQVc7UUFWekQsT0FBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDO1FBRy9CLHFCQUFnQixHQUFHLE1BQU0sQ0FBQztRQUcxQixjQUFTLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7UUFFL0Isa0JBQWEsR0FBRyxDQUFDLE1BQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDO0lBSS9DLENBQUM7SUFFRCxxQkFBcUI7SUFDckIsc0JBQXNCO0lBQ3RCLElBQUk7SUFFSixXQUFXLENBQUMsT0FBc0I7UUFDaEMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzQixJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUU7WUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7WUFDZixPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUU7Z0JBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO29CQUNiLEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUN6RCxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDakMsQ0FBQyxDQUFBO1lBQ0osQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7O2dIQWhDVSxtQkFBbUI7b0dBQW5CLG1CQUFtQixrUUNoQmhDLHNUQVNBOzJGRE9hLG1CQUFtQjtrQkFaL0IsU0FBUzsrQkFDRSxnQkFBZ0I7OzBCQXdCYixRQUFROzswQkFBSSxJQUFJOzRDQVJwQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE9wdGlvbmFsLCBTZWxmLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVaVNpbXBsZUNvbXBvbmVudCB9IGZyb20gJy4uL3NpbXBsZS91aS1zaW1wbGUuY29tcG9uZW50JztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktcmFkaW8tZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yYWRpby1ncm91cC5jb21wb25lbnQuc2NzcyddLFxuICAvLyBwcm92aWRlcnM6IFtcbiAgLy8gICB7XG4gIC8vICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAvLyAgICAgbXVsdGk6IHRydWUsXG4gIC8vICAgICB1c2VFeGlzdGluZzogQ2hlY2tib3hHcm91cENvbXBvbmVudFxuICAvLyAgIH1cbiAgLy8gXVxufSlcbmV4cG9ydCBjbGFzcyBSYWRpb0dyb3VwQ29tcG9uZW50IGV4dGVuZHMgVWlTaW1wbGVDb21wb25lbnQgaW1wbGVtZW50cyAvKk9uSW5pdCwgKi9PbkNoYW5nZXMge1xuXG4gIGNieHM6IGFueTtcbiAgaWQgPSBNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiA5OTk5OTkpO1xuXG4gIEBJbnB1dCgpIG9wdGlvbnM7XG4gIEBJbnB1dCgpIGRpc3BsYXlBdHRyaWJ1dGUgPSAnbmFtZSc7XG4gIEBJbnB1dCgpIHZhbHVlQXR0cmlidXRlO1xuXG4gIEBJbnB1dCgpIGdyb3VwTmFtZSA9ICdyYWRpby0nICsgdGhpcy5pZDtcblxuICBASW5wdXQoKSBvcHRpb25FbmFibGVkID0gKG9wdGlvbjogYW55KSA9PiB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIGNvbnRyb2w6IE5nQ29udHJvbCkge1xuICAgIHN1cGVyKGNvbnRyb2wpO1xuICB9XG5cbiAgLy8gbmdPbkluaXQoKTogdm9pZCB7XG4gIC8vICAgc3VwZXIubmdPbkluaXQoKTtcbiAgLy8gfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgICBpZiAoY2hhbmdlcy5vcHRpb25zKSB7XG4gICAgICB0aGlzLmNieHMgPSBbXTtcbiAgICAgIGNoYW5nZXMub3B0aW9ucy5jdXJyZW50VmFsdWUuZm9yRWFjaChjdiA9PiB7XG4gICAgICAgIHRoaXMuY2J4cy5wdXNoKHtcbiAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZUF0dHJpYnV0ZSA/IGN2W3RoaXMudmFsdWVBdHRyaWJ1dGVdIDogY3YsXG4gICAgICAgICAgbGFiZWw6IGN2W3RoaXMuZGlzcGxheUF0dHJpYnV0ZV1cbiAgICAgICAgfSlcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcbiAgLy8gICBpZiAodGhpcy5jb21wb25lbnRGb3JtQ29udHJvbCkge1xuICAvLyAgICAgdGhpcy5jb21wb25lbnRGb3JtQ29udHJvbC5zZXRWYWx1ZShvYmopO1xuICAvLyAgIH1cbiAgLy8gfVxufVxuIiwiPHVpLXNpbXBsZS1sYXlvdXQgW2N0eF09XCJ0aGlzXCI+XHJcblxyXG4gIDxtYXQtcmFkaW8tZ3JvdXAgW2Zvcm1Db250cm9sXT1cImNvbXBvbmVudEZvcm1Db250cm9sXCIgW25hbWVdPVwiZ3JvdXBOYW1lXCIgW2NsYXNzXT1cInNpemVcIj5cclxuXHJcbiAgICA8bWF0LXJhZGlvLWJ1dHRvbiAqbmdGb3I9XCJsZXQgY2J4IG9mIGNieHNcIiBbdmFsdWVdPVwiY2J4LnZhbHVlXCIgPnt7Y2J4LmxhYmVsfX08L21hdC1yYWRpby1idXR0b24+XHJcblxyXG4gIDwvbWF0LXJhZGlvLWdyb3VwPlxyXG5cclxuPC91aS1zaW1wbGUtbGF5b3V0PlxyXG4iXX0=
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import { Component, Inject, Input, Optional, Self, ViewChild } from '@angular/core';
|
|
2
|
-
import { UiSimpleComponent } from '../simple/ui-simple.component';
|
|
3
|
-
import { UI_TRANSLATESERVICE } from '../services/ui-translate.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/forms";
|
|
6
|
-
import * as i2 from "@angular/common";
|
|
7
|
-
import * as i3 from "@angular/material/icon";
|
|
8
|
-
import * as i4 from "@angular/material/select";
|
|
9
|
-
import * as i5 from "@angular/material/core";
|
|
10
|
-
import * as i6 from "../button/button.component";
|
|
11
|
-
import * as i7 from "../simple/ui-simple-layout.component";
|
|
12
|
-
export class SelectComponent extends UiSimpleComponent {
|
|
13
|
-
constructor(ngControl, translateService) {
|
|
14
|
-
super(ngControl);
|
|
15
|
-
this.ngControl = ngControl;
|
|
16
|
-
this.translateService = translateService;
|
|
17
|
-
this.multiple = false;
|
|
18
|
-
this.options = [];
|
|
19
|
-
this.allowEmptySelection = false;
|
|
20
|
-
this.lastCount = -1;
|
|
21
|
-
this.overoption = false;
|
|
22
|
-
this.optionToValue = (o) => this.valueAttribute ? o[this.valueAttribute] : o;
|
|
23
|
-
}
|
|
24
|
-
ngOnInit() {
|
|
25
|
-
super.ngOnInit();
|
|
26
|
-
if (this.optionFormatter === undefined) {
|
|
27
|
-
this.optionFormatter = o => this.displayAttribute ? o[this.displayAttribute] : o;
|
|
28
|
-
}
|
|
29
|
-
if (this.multiple && this.componentFormControl) {
|
|
30
|
-
this.lastCount = this.componentFormControl.value.length;
|
|
31
|
-
this.componentFormControl.valueChanges.subscribe(v => {
|
|
32
|
-
if (v.length === 1 && this.lastCount === 0 && this.overoption) {
|
|
33
|
-
this.select.selectionChange.emit(this.optionToValue(v));
|
|
34
|
-
this.select.close();
|
|
35
|
-
}
|
|
36
|
-
this.lastCount = v.length;
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
selectOption(o, select) {
|
|
41
|
-
select.selectionChange.emit(this.optionToValue(o));
|
|
42
|
-
select.close();
|
|
43
|
-
}
|
|
44
|
-
selectAll() {
|
|
45
|
-
this.componentFormControl.setValue(this.options.map(o => this.optionToValue(o)));
|
|
46
|
-
}
|
|
47
|
-
clearAll() {
|
|
48
|
-
this.componentFormControl.setValue([]);
|
|
49
|
-
}
|
|
50
|
-
setDisabledState(isDisabled) {
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
SelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: SelectComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: UI_TRANSLATESERVICE }], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
-
SelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: SelectComponent, selector: "ui-select", inputs: { multiple: "multiple", triggerFormatter: "triggerFormatter", valueAttribute: "valueAttribute", resetText: "resetText", displayAttribute: "displayAttribute", options: "options", optionFormatter: "optionFormatter", optionTemplateRef: "optionTemplateRef", triggerTemplateRef: "triggerTemplateRef", panelClass: "panelClass", allowEmptySelection: "allowEmptySelection" }, viewQueries: [{ propertyName: "select", first: true, predicate: ["select"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ui-simple-layout [ctx]=\"this\">\r\n\r\n<mat-select class=\"control-container\" #select [panelClass]=\"panelClass\" [placeholder]=\"placeholder\" [formControl]=\"componentFormControl\" [multiple]=\"multiple\">\r\n\r\n <mat-select-trigger *ngIf=\"triggerTemplateRef\">\r\n <ng-template [ngTemplateOutlet]=\"triggerTemplateRef\" [ngTemplateOutletContext]=\"{option:componentFormControl?.value}\" ></ng-template>\r\n </mat-select-trigger>\r\n\r\n <mat-select-trigger *ngIf=\"triggerFormatter\">{{componentFormControl?.value ? triggerFormatter(componentFormControl?.value) : ''}}</mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"resetText\">{{resetText}}</mat-option>\r\n\r\n <mat-option *ngFor=\"let o of options\" [value]=\"optionToValue(o)\" >\r\n\r\n <div class=\"option-container\" (mouseenter)=\"overoption = true;\" (mouseleave)=\"overoption = false\">\r\n\r\n <ng-container *ngIf=\"optionTemplateRef\">\r\n <ng-template [ngTemplateOutlet]=\"optionTemplateRef\" [ngTemplateOutletContext]=\"{option:o}\" ></ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!optionTemplateRef\">\r\n {{optionFormatter(o)}}\r\n </ng-container>\r\n\r\n <mat-icon class=\"select-one\" *ngIf=\"multiple && componentFormControl?.value?.length === 0\" (click)=\"selectOption(o, select)\">north_west</mat-icon>\r\n </div>\r\n\r\n </mat-option>\r\n\r\n <div class=\"buttons\" *ngIf=\"multiple\">\r\n <ui-button style=\"margin-right: auto;\" [kind]=\"'basic'\" [size]=\"'smaller'\" [label]=\"translateService.instant('ui.controls.ui-select.clear-selection')\" (click)=\"clearAll()\"></ui-button>\r\n <ui-button [size]=\"'smaller'\" [label]=\"translateService.instant('ui.controls.ui-select.all')\" (click)=\"selectAll()\"></ui-button>\r\n <ui-button [size]=\"'smaller'\" style=\"padding-left: 0.2em;\" [disabled]=\"componentFormControl?.value?.length === 0 && !allowEmptySelection\" [label]=\"translateService.instant('ui.controls.ui-select.apply-selection') + (componentFormControl?.value?.length > 0 ? ' (' + componentFormControl.value.length + ')' : '')\" (click)=\"select.close()\"></ui-button>\r\n </div>\r\n\r\n</mat-select>\r\n\r\n</ui-simple-layout>\r\n", styles: [":host{width:100%}:host .control-container{width:100%;position:relative}:host .control-container.has-prefix ::ng-deep input,:host .control-container.has-prefix ::ng-deep textarea,:host .control-container.has-prefix ::ng-deep .mat-mdc-select-trigger{padding-left:1.8em}:host .control-container.has-suffix ::ng-deep input,:host .control-container.has-suffix ::ng-deep textarea,:host .control-container.has-suffix ::ng-deep .mat-mdc-select-trigger{padding-right:1.8em}:host .control-container.has-suffix.has-clear-icon ::ng-deep input,:host .control-container.has-suffix.has-clear-icon ::ng-deep textarea,:host .control-container.has-suffix.has-clear-icon ::ng-deep .mat-mdc-select-trigger{padding-right:3.6em}:host .control-container.has-suffix.has-clear-icon ::ng-deep .clear-icon{right:1.4em!important}:host ::ng-deep [slot=suffix],:host ::ng-deep .clear-icon,:host ::ng-deep .suffix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);right:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=suffix]:not(.disabled),:host ::ng-deep .clear-icon:not(.disabled),:host ::ng-deep .suffix-icon:not(.disabled){cursor:pointer}:host ::ng-deep [slot=prefix],:host ::ng-deep .prefix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);left:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=prefix]:not(.disabled),:host ::ng-deep .prefix-icon:not(.disabled){cursor:pointer}:host ::ng-deep input,:host ::ng-deep textarea,:host ::ng-deep .mat-mdc-select-trigger{resize:none;width:100%;line-height:1.2em;font-size:1em;outline:none;border-style:solid;transition:border-color 333ms}:host ::ng-deep input.centered,:host ::ng-deep textarea.centered,:host ::ng-deep .mat-mdc-select-trigger.centered{text-align:center}:host ::ng-deep textarea.autoresize{box-sizing:content-box;width:calc(100% - 1.4em)}:host ::ng-deep ::ng-deep .mat-select-trigger,:host ::ng-deep ::ng-deep .mat-mdc-select-trigger{height:100%}:host ::ng-deep ::ng-deep .mat-select-value,:host ::ng-deep ::ng-deep .mat-mdc-select-value{vertical-align:middle}::ng-deep ui-input{display:block}\n", "::ng-deep .mat-mdc-select-panel{padding:0!important}::ng-deep .mat-mdc-select-arrow-wrapper{height:1px!important}::ng-deep .mat-select-panel .select-one,::ng-deep .mat-mdc-select-panel .select-one{position:absolute;right:0;top:.3em;display:none}::ng-deep .mat-select-panel .mat-option-text:hover .select-one,::ng-deep .mat-select-panel .mat-mdc-option:hover .select-one,::ng-deep .mat-mdc-select-panel .mat-option-text:hover .select-one,::ng-deep .mat-mdc-select-panel .mat-mdc-option:hover .select-one{display:block}::ng-deep .mat-select-panel .buttons,::ng-deep .mat-mdc-select-panel .buttons{padding:.2em;background-color:#fff;display:flex;position:sticky;bottom:0}\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: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "directive", type: i4.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i6.ButtonComponent, selector: "ui-button", inputs: ["type", "matIconPrefix", "label", "disabled", "busy", "kind", "color", "size", "formInvalid"] }, { kind: "component", type: i7.UiSimpleLayoutComponent, selector: "ui-simple-layout", inputs: ["ctx"] }] });
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: SelectComponent, decorators: [{
|
|
56
|
-
type: Component,
|
|
57
|
-
args: [{ selector: 'ui-select', template: "<ui-simple-layout [ctx]=\"this\">\r\n\r\n<mat-select class=\"control-container\" #select [panelClass]=\"panelClass\" [placeholder]=\"placeholder\" [formControl]=\"componentFormControl\" [multiple]=\"multiple\">\r\n\r\n <mat-select-trigger *ngIf=\"triggerTemplateRef\">\r\n <ng-template [ngTemplateOutlet]=\"triggerTemplateRef\" [ngTemplateOutletContext]=\"{option:componentFormControl?.value}\" ></ng-template>\r\n </mat-select-trigger>\r\n\r\n <mat-select-trigger *ngIf=\"triggerFormatter\">{{componentFormControl?.value ? triggerFormatter(componentFormControl?.value) : ''}}</mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"resetText\">{{resetText}}</mat-option>\r\n\r\n <mat-option *ngFor=\"let o of options\" [value]=\"optionToValue(o)\" >\r\n\r\n <div class=\"option-container\" (mouseenter)=\"overoption = true;\" (mouseleave)=\"overoption = false\">\r\n\r\n <ng-container *ngIf=\"optionTemplateRef\">\r\n <ng-template [ngTemplateOutlet]=\"optionTemplateRef\" [ngTemplateOutletContext]=\"{option:o}\" ></ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!optionTemplateRef\">\r\n {{optionFormatter(o)}}\r\n </ng-container>\r\n\r\n <mat-icon class=\"select-one\" *ngIf=\"multiple && componentFormControl?.value?.length === 0\" (click)=\"selectOption(o, select)\">north_west</mat-icon>\r\n </div>\r\n\r\n </mat-option>\r\n\r\n <div class=\"buttons\" *ngIf=\"multiple\">\r\n <ui-button style=\"margin-right: auto;\" [kind]=\"'basic'\" [size]=\"'smaller'\" [label]=\"translateService.instant('ui.controls.ui-select.clear-selection')\" (click)=\"clearAll()\"></ui-button>\r\n <ui-button [size]=\"'smaller'\" [label]=\"translateService.instant('ui.controls.ui-select.all')\" (click)=\"selectAll()\"></ui-button>\r\n <ui-button [size]=\"'smaller'\" style=\"padding-left: 0.2em;\" [disabled]=\"componentFormControl?.value?.length === 0 && !allowEmptySelection\" [label]=\"translateService.instant('ui.controls.ui-select.apply-selection') + (componentFormControl?.value?.length > 0 ? ' (' + componentFormControl.value.length + ')' : '')\" (click)=\"select.close()\"></ui-button>\r\n </div>\r\n\r\n</mat-select>\r\n\r\n</ui-simple-layout>\r\n", styles: [":host{width:100%}:host .control-container{width:100%;position:relative}:host .control-container.has-prefix ::ng-deep input,:host .control-container.has-prefix ::ng-deep textarea,:host .control-container.has-prefix ::ng-deep .mat-mdc-select-trigger{padding-left:1.8em}:host .control-container.has-suffix ::ng-deep input,:host .control-container.has-suffix ::ng-deep textarea,:host .control-container.has-suffix ::ng-deep .mat-mdc-select-trigger{padding-right:1.8em}:host .control-container.has-suffix.has-clear-icon ::ng-deep input,:host .control-container.has-suffix.has-clear-icon ::ng-deep textarea,:host .control-container.has-suffix.has-clear-icon ::ng-deep .mat-mdc-select-trigger{padding-right:3.6em}:host .control-container.has-suffix.has-clear-icon ::ng-deep .clear-icon{right:1.4em!important}:host ::ng-deep [slot=suffix],:host ::ng-deep .clear-icon,:host ::ng-deep .suffix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);right:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=suffix]:not(.disabled),:host ::ng-deep .clear-icon:not(.disabled),:host ::ng-deep .suffix-icon:not(.disabled){cursor:pointer}:host ::ng-deep [slot=prefix],:host ::ng-deep .prefix-icon{position:absolute;user-select:none;transition:color .25s;top:calc(50% - .5em);left:.2em;width:1em;height:1em;font-size:1.5em}:host ::ng-deep [slot=prefix]:not(.disabled),:host ::ng-deep .prefix-icon:not(.disabled){cursor:pointer}:host ::ng-deep input,:host ::ng-deep textarea,:host ::ng-deep .mat-mdc-select-trigger{resize:none;width:100%;line-height:1.2em;font-size:1em;outline:none;border-style:solid;transition:border-color 333ms}:host ::ng-deep input.centered,:host ::ng-deep textarea.centered,:host ::ng-deep .mat-mdc-select-trigger.centered{text-align:center}:host ::ng-deep textarea.autoresize{box-sizing:content-box;width:calc(100% - 1.4em)}:host ::ng-deep ::ng-deep .mat-select-trigger,:host ::ng-deep ::ng-deep .mat-mdc-select-trigger{height:100%}:host ::ng-deep ::ng-deep .mat-select-value,:host ::ng-deep ::ng-deep .mat-mdc-select-value{vertical-align:middle}::ng-deep ui-input{display:block}\n", "::ng-deep .mat-mdc-select-panel{padding:0!important}::ng-deep .mat-mdc-select-arrow-wrapper{height:1px!important}::ng-deep .mat-select-panel .select-one,::ng-deep .mat-mdc-select-panel .select-one{position:absolute;right:0;top:.3em;display:none}::ng-deep .mat-select-panel .mat-option-text:hover .select-one,::ng-deep .mat-select-panel .mat-mdc-option:hover .select-one,::ng-deep .mat-mdc-select-panel .mat-option-text:hover .select-one,::ng-deep .mat-mdc-select-panel .mat-mdc-option:hover .select-one{display:block}::ng-deep .mat-select-panel .buttons,::ng-deep .mat-mdc-select-panel .buttons{padding:.2em;background-color:#fff;display:flex;position:sticky;bottom:0}\n"] }]
|
|
58
|
-
}], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
|
|
59
|
-
type: Optional
|
|
60
|
-
}, {
|
|
61
|
-
type: Self
|
|
62
|
-
}] }, { type: undefined, decorators: [{
|
|
63
|
-
type: Inject,
|
|
64
|
-
args: [UI_TRANSLATESERVICE]
|
|
65
|
-
}] }]; }, propDecorators: { multiple: [{
|
|
66
|
-
type: Input
|
|
67
|
-
}], triggerFormatter: [{
|
|
68
|
-
type: Input
|
|
69
|
-
}], valueAttribute: [{
|
|
70
|
-
type: Input
|
|
71
|
-
}], resetText: [{
|
|
72
|
-
type: Input
|
|
73
|
-
}], displayAttribute: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}], options: [{
|
|
76
|
-
type: Input
|
|
77
|
-
}], optionFormatter: [{
|
|
78
|
-
type: Input
|
|
79
|
-
}], optionTemplateRef: [{
|
|
80
|
-
type: Input
|
|
81
|
-
}], triggerTemplateRef: [{
|
|
82
|
-
type: Input
|
|
83
|
-
}], panelClass: [{
|
|
84
|
-
type: Input
|
|
85
|
-
}], allowEmptySelection: [{
|
|
86
|
-
type: Input
|
|
87
|
-
}], select: [{
|
|
88
|
-
type: ViewChild,
|
|
89
|
-
args: ['select']
|
|
90
|
-
}] } });
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxJQUFJLEVBQWUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRWxFLE9BQU8sRUFBdUIsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7O0FBUTVGLE1BQU0sT0FBTyxlQUFnQixTQUFRLGlCQUFpQjtJQW9CcEQsWUFBdUMsU0FBb0IsRUFDWCxnQkFBcUM7UUFDbkYsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRm9CLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDWCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXFCO1FBbkI1RSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBTWpCLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFLcEIsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBSXJDLGNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNmLGVBQVUsR0FBRyxLQUFLLENBQUM7UUF3Qm5CLGtCQUFhLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQW5CN0UsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLFNBQVMsRUFBRTtZQUN0QyxJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNsRjtRQUNELElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUN4RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDbkQsSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO29CQUM3RCxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN4RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO2lCQUNyQjtnQkFDRCxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDNUIsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFJRCxZQUFZLENBQUMsQ0FBTSxFQUFFLE1BQWlCO1FBQ3BDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuRCxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtJQUNwQyxDQUFDOzs0R0ExRFUsZUFBZSx1RUFxQk4sbUJBQW1CO2dHQXJCNUIsZUFBZSxraUJDWjVCLDBxRUFzQ0E7MkZEMUJhLGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0UsV0FBVzs7MEJBeUJSLFFBQVE7OzBCQUFJLElBQUk7OzBCQUNoQixNQUFNOzJCQUFDLG1CQUFtQjs0Q0FuQjlCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFFZSxNQUFNO3NCQUExQixTQUFTO3VCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwsIFNlbGYsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBVaVNpbXBsZUNvbXBvbmVudCB9IGZyb20gJy4uL3NpbXBsZS91aS1zaW1wbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0U2VsZWN0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgSVVpVHJhbnNsYXRlU2VydmljZSwgVUlfVFJBTlNMQVRFU0VSVklDRSB9IGZyb20gJy4uL3NlcnZpY2VzL3VpLXRyYW5zbGF0ZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndWktc2VsZWN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsgJy4uL3NpbXBsZS91aS1zaW1wbGUtbGF5b3V0LmNvbXBvbmVudC5zY3NzJywgJy4vc2VsZWN0LmNvbXBvbmVudC5zY3NzJyBdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGV4dGVuZHMgVWlTaW1wbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBASW5wdXQoKSBtdWx0aXBsZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHRyaWdnZXJGb3JtYXR0ZXI6IGFueTtcclxuICBASW5wdXQoKSB2YWx1ZUF0dHJpYnV0ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHJlc2V0VGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIGRpc3BsYXlBdHRyaWJ1dGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuXHJcbiAgQElucHV0KCkgb3B0aW9uczogYW55W10gPSBbXTtcclxuICBASW5wdXQoKSBvcHRpb25Gb3JtYXR0ZXI6ICgoYXJnOiBhbnkpID0+IHN0cmluZyB8IHVuZGVmaW5lZCkgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgb3B0aW9uVGVtcGxhdGVSZWY/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBJbnB1dCgpIHRyaWdnZXJUZW1wbGF0ZVJlZj86IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgcGFuZWxDbGFzcztcclxuICBASW5wdXQoKSBhbGxvd0VtcHR5U2VsZWN0aW9uID0gZmFsc2U7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3NlbGVjdCcpIHNlbGVjdDogTWF0U2VsZWN0O1xyXG5cclxuICBsYXN0Q291bnQgPSAtMTtcclxuICBvdmVyb3B0aW9uID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sLFxyXG4gICAgICAgICAgICAgIEBJbmplY3QoVUlfVFJBTlNMQVRFU0VSVklDRSkgcHVibGljIHRyYW5zbGF0ZVNlcnZpY2U6IElVaVRyYW5zbGF0ZVNlcnZpY2UpIHtcclxuICAgIHN1cGVyKG5nQ29udHJvbCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICBpZiAodGhpcy5vcHRpb25Gb3JtYXR0ZXIgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLm9wdGlvbkZvcm1hdHRlciA9IG8gPT4gdGhpcy5kaXNwbGF5QXR0cmlidXRlID8gb1t0aGlzLmRpc3BsYXlBdHRyaWJ1dGVdIDogbztcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm11bHRpcGxlICYmIHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2wpIHtcclxuICAgICAgdGhpcy5sYXN0Q291bnQgPSB0aGlzLmNvbXBvbmVudEZvcm1Db250cm9sLnZhbHVlLmxlbmd0aDtcclxuICAgICAgdGhpcy5jb21wb25lbnRGb3JtQ29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHYgPT4ge1xyXG4gICAgICAgIGlmICh2Lmxlbmd0aCA9PT0gMSAmJiB0aGlzLmxhc3RDb3VudCA9PT0gMCAmJiB0aGlzLm92ZXJvcHRpb24pIHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0LnNlbGVjdGlvbkNoYW5nZS5lbWl0KHRoaXMub3B0aW9uVG9WYWx1ZSh2KSk7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdC5jbG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmxhc3RDb3VudCA9IHYubGVuZ3RoO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9wdGlvblRvVmFsdWUgPSAobzogYW55KSA9PiB0aGlzLnZhbHVlQXR0cmlidXRlID8gb1t0aGlzLnZhbHVlQXR0cmlidXRlXSA6IG87XHJcblxyXG4gIHNlbGVjdE9wdGlvbihvOiBhbnksIHNlbGVjdDogTWF0U2VsZWN0KSB7XHJcbiAgICBzZWxlY3Quc2VsZWN0aW9uQ2hhbmdlLmVtaXQodGhpcy5vcHRpb25Ub1ZhbHVlKG8pKTtcclxuICAgIHNlbGVjdC5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0QWxsKCkge1xyXG4gICAgdGhpcy5jb21wb25lbnRGb3JtQ29udHJvbC5zZXRWYWx1ZSh0aGlzLm9wdGlvbnMubWFwKG8gPT4gdGhpcy5vcHRpb25Ub1ZhbHVlKG8pKSk7XHJcbiAgfVxyXG5cclxuICBjbGVhckFsbCgpIHtcclxuICAgIHRoaXMuY29tcG9uZW50Rm9ybUNvbnRyb2wuc2V0VmFsdWUoW10pO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgfVxyXG59XHJcbiIsIjx1aS1zaW1wbGUtbGF5b3V0IFtjdHhdPVwidGhpc1wiPlxyXG5cclxuPG1hdC1zZWxlY3QgY2xhc3M9XCJjb250cm9sLWNvbnRhaW5lclwiICNzZWxlY3QgW3BhbmVsQ2xhc3NdPVwicGFuZWxDbGFzc1wiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJjb21wb25lbnRGb3JtQ29udHJvbFwiIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiPlxyXG5cclxuICA8bWF0LXNlbGVjdC10cmlnZ2VyICpuZ0lmPVwidHJpZ2dlclRlbXBsYXRlUmVmXCI+XHJcbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidHJpZ2dlclRlbXBsYXRlUmVmXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntvcHRpb246Y29tcG9uZW50Rm9ybUNvbnRyb2w/LnZhbHVlfVwiID48L25nLXRlbXBsYXRlPlxyXG4gIDwvbWF0LXNlbGVjdC10cmlnZ2VyPlxyXG5cclxuICA8bWF0LXNlbGVjdC10cmlnZ2VyICpuZ0lmPVwidHJpZ2dlckZvcm1hdHRlclwiPnt7Y29tcG9uZW50Rm9ybUNvbnRyb2w/LnZhbHVlID8gdHJpZ2dlckZvcm1hdHRlcihjb21wb25lbnRGb3JtQ29udHJvbD8udmFsdWUpIDogJyd9fTwvbWF0LXNlbGVjdC10cmlnZ2VyPlxyXG5cclxuICA8bWF0LW9wdGlvbiAqbmdJZj1cInJlc2V0VGV4dFwiPnt7cmVzZXRUZXh0fX08L21hdC1vcHRpb24+XHJcblxyXG4gIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvIG9mIG9wdGlvbnNcIiBbdmFsdWVdPVwib3B0aW9uVG9WYWx1ZShvKVwiID5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwib3B0aW9uLWNvbnRhaW5lclwiIChtb3VzZWVudGVyKT1cIm92ZXJvcHRpb24gPSB0cnVlO1wiIChtb3VzZWxlYXZlKT1cIm92ZXJvcHRpb24gPSBmYWxzZVwiPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvblRlbXBsYXRlUmVmXCI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIm9wdGlvblRlbXBsYXRlUmVmXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntvcHRpb246b31cIiA+PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW9wdGlvblRlbXBsYXRlUmVmXCI+XHJcbiAgICAgICAge3tvcHRpb25Gb3JtYXR0ZXIobyl9fVxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInNlbGVjdC1vbmVcIiAqbmdJZj1cIm11bHRpcGxlICYmIGNvbXBvbmVudEZvcm1Db250cm9sPy52YWx1ZT8ubGVuZ3RoID09PSAwXCIgKGNsaWNrKT1cInNlbGVjdE9wdGlvbihvLCBzZWxlY3QpXCI+bm9ydGhfd2VzdDwvbWF0LWljb24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9tYXQtb3B0aW9uPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiYnV0dG9uc1wiICpuZ0lmPVwibXVsdGlwbGVcIj5cclxuICAgIDx1aS1idXR0b24gc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IGF1dG87XCIgW2tpbmRdPVwiJ2Jhc2ljJ1wiIFtzaXplXT1cIidzbWFsbGVyJ1wiIFtsYWJlbF09XCJ0cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3VpLmNvbnRyb2xzLnVpLXNlbGVjdC5jbGVhci1zZWxlY3Rpb24nKVwiIChjbGljayk9XCJjbGVhckFsbCgpXCI+PC91aS1idXR0b24+XHJcbiAgICA8dWktYnV0dG9uIFtzaXplXT1cIidzbWFsbGVyJ1wiIFtsYWJlbF09XCJ0cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ3VpLmNvbnRyb2xzLnVpLXNlbGVjdC5hbGwnKVwiIChjbGljayk9XCJzZWxlY3RBbGwoKVwiPjwvdWktYnV0dG9uPlxyXG4gICAgPHVpLWJ1dHRvbiBbc2l6ZV09XCInc21hbGxlcidcIiBzdHlsZT1cInBhZGRpbmctbGVmdDogMC4yZW07XCIgW2Rpc2FibGVkXT1cImNvbXBvbmVudEZvcm1Db250cm9sPy52YWx1ZT8ubGVuZ3RoID09PSAwICYmICFhbGxvd0VtcHR5U2VsZWN0aW9uXCIgW2xhYmVsXT1cInRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgndWkuY29udHJvbHMudWktc2VsZWN0LmFwcGx5LXNlbGVjdGlvbicpICsgKGNvbXBvbmVudEZvcm1Db250cm9sPy52YWx1ZT8ubGVuZ3RoID4gMCA/ICcgKCcgKyBjb21wb25lbnRGb3JtQ29udHJvbC52YWx1ZS5sZW5ndGggKyAnKScgOiAnJylcIiAoY2xpY2spPVwic2VsZWN0LmNsb3NlKClcIj48L3VpLWJ1dHRvbj5cclxuICA8L2Rpdj5cclxuXHJcbjwvbWF0LXNlbGVjdD5cclxuXHJcbjwvdWktc2ltcGxlLWxheW91dD5cclxuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../base/ui-base-layout.component";
|
|
5
|
-
export class UiSimpleLayoutComponent {
|
|
6
|
-
}
|
|
7
|
-
UiSimpleLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: UiSimpleLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
-
UiSimpleLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: UiSimpleLayoutComponent, selector: "ui-simple-layout", inputs: { ctx: "ctx" }, ngImport: i0, template: "<ui-base-layout [ctx]=\"ctx\">\r\n\r\n <div *ngIf=\"ctx.validators?.maxLength\" class=\"counter counter-top\">\r\n {{ ctx.componentFormControl.value ? ctx.componentFormControl.value.length : 0 }} / {{ ctx.validators?.maxLength }}\r\n </div>\r\n\r\n <div *ngIf=\"ctx.validators?.maxLength\" class=\"counter counter-bottom\">\r\n {{ ctx.componentFormControl.value ? ctx.componentFormControl.value.length : 0 }} / {{ ctx.validators?.maxLength }}\r\n </div>\r\n\r\n <ng-content></ng-content>\r\n\r\n</ui-base-layout>\r\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.UiBaseLayoutComponent, selector: "ui-base-layout", inputs: ["ctx"] }] });
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: UiSimpleLayoutComponent, decorators: [{
|
|
10
|
-
type: Component,
|
|
11
|
-
args: [{ selector: 'ui-simple-layout', template: "<ui-base-layout [ctx]=\"ctx\">\r\n\r\n <div *ngIf=\"ctx.validators?.maxLength\" class=\"counter counter-top\">\r\n {{ ctx.componentFormControl.value ? ctx.componentFormControl.value.length : 0 }} / {{ ctx.validators?.maxLength }}\r\n </div>\r\n\r\n <div *ngIf=\"ctx.validators?.maxLength\" class=\"counter counter-bottom\">\r\n {{ ctx.componentFormControl.value ? ctx.componentFormControl.value.length : 0 }} / {{ ctx.validators?.maxLength }}\r\n </div>\r\n\r\n <ng-content></ng-content>\r\n\r\n</ui-base-layout>\r\n" }]
|
|
12
|
-
}], propDecorators: { ctx: [{
|
|
13
|
-
type: Input
|
|
14
|
-
}] } });
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktc2ltcGxlLWxheW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL3NpbXBsZS91aS1zaW1wbGUtbGF5b3V0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvc2ltcGxlL3VpLXNpbXBsZS1sYXlvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFRakQsTUFBTSxPQUFPLHVCQUF1Qjs7b0hBQXZCLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLGdGQ1JwQyxpaEJBYUE7MkZETGEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjs4QkFNbkIsR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVaVNpbXBsZUNvbXBvbmVudCB9IGZyb20gJy4vdWktc2ltcGxlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3VpLXNpbXBsZS1sYXlvdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91aS1zaW1wbGUtbGF5b3V0LmNvbXBvbmVudC5odG1sJ1xyXG4gIC8vIHN0eWxlVXJsczogWyAnLi91aS1zaW1wbGUtbGF5b3V0LmNvbXBvbmVudC5zY3NzJyBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaVNpbXBsZUxheW91dENvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGN0eDogVWlTaW1wbGVDb21wb25lbnQ7XHJcblxyXG59XHJcbiIsIjx1aS1iYXNlLWxheW91dCBbY3R4XT1cImN0eFwiPlxyXG5cclxuICA8ZGl2ICpuZ0lmPVwiY3R4LnZhbGlkYXRvcnM/Lm1heExlbmd0aFwiIGNsYXNzPVwiY291bnRlciBjb3VudGVyLXRvcFwiPlxyXG4gICAge3sgY3R4LmNvbXBvbmVudEZvcm1Db250cm9sLnZhbHVlID8gY3R4LmNvbXBvbmVudEZvcm1Db250cm9sLnZhbHVlLmxlbmd0aCA6IDAgfX0gLyB7eyBjdHgudmFsaWRhdG9ycz8ubWF4TGVuZ3RoIH19XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJjdHgudmFsaWRhdG9ycz8ubWF4TGVuZ3RoXCIgY2xhc3M9XCJjb3VudGVyIGNvdW50ZXItYm90dG9tXCI+XHJcbiAgICB7eyBjdHguY29tcG9uZW50Rm9ybUNvbnRyb2wudmFsdWUgPyBjdHguY29tcG9uZW50Rm9ybUNvbnRyb2wudmFsdWUubGVuZ3RoIDogMCB9fSAvIHt7IGN0eC52YWxpZGF0b3JzPy5tYXhMZW5ndGggfX1cclxuICA8L2Rpdj5cclxuXHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuPC91aS1iYXNlLWxheW91dD5cclxuIl19
|