@testgorilla/tgo-ui 3.13.0 → 3.13.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/components/multi-input/multi-input.component.d.ts +23 -43
- package/components/multi-input/multi-input.model.d.ts +4 -1
- package/components/multi-input/required-multi-input.validator.d.ts +3 -0
- package/components/side-panel/side-panel.component.d.ts +1 -1
- package/components/side-panel/side-panel.model.d.ts +25 -0
- package/components/side-panel/side-panel.service.d.ts +5 -4
- package/esm2022/components/multi-input/multi-input.component.mjs +80 -148
- package/esm2022/components/multi-input/multi-input.model.mjs +1 -1
- package/esm2022/components/multi-input/required-multi-input.validator.mjs +14 -0
- package/esm2022/components/side-panel/side-panel.component.mjs +3 -3
- package/esm2022/components/side-panel/side-panel.model.mjs +31 -1
- package/esm2022/components/side-panel/side-panel.service.mjs +19 -7
- package/fesm2022/testgorilla-tgo-ui.mjs +139 -154
- package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -24512,21 +24512,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
24512
24512
|
}]
|
|
24513
24513
|
}] });
|
|
24514
24514
|
|
|
24515
|
-
|
|
24516
|
-
|
|
24517
|
-
|
|
24518
|
-
|
|
24519
|
-
|
|
24520
|
-
|
|
24521
|
-
|
|
24522
|
-
|
|
24523
|
-
|
|
24524
|
-
this.addDropdownControl();
|
|
24525
|
-
this.multiInputForm.patchValue(v);
|
|
24515
|
+
/* eslint-disable @typescript-eslint/unbound-method */
|
|
24516
|
+
const requiredMultiInput = (control) => {
|
|
24517
|
+
const controlValue = control.value;
|
|
24518
|
+
const hasRequired = control.hasValidator(Validators.required);
|
|
24519
|
+
if (hasRequired && controlValue) {
|
|
24520
|
+
const anyFalsy = Object.values(controlValue).some(v => !v);
|
|
24521
|
+
if (anyFalsy) {
|
|
24522
|
+
return { required: true };
|
|
24523
|
+
}
|
|
24526
24524
|
}
|
|
24527
|
-
|
|
24525
|
+
return null;
|
|
24526
|
+
};
|
|
24527
|
+
|
|
24528
|
+
/* eslint-disable @typescript-eslint/no-inferrable-types */
|
|
24529
|
+
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
|
24530
|
+
/* eslint-disable no-underscore-dangle */
|
|
24531
|
+
/* eslint-disable @typescript-eslint/unbound-method */
|
|
24532
|
+
class MultiInputComponent {
|
|
24533
|
+
constructor(ngControl, fb) {
|
|
24528
24534
|
this.ngControl = ngControl;
|
|
24529
|
-
this.defaultAppTheme = defaultAppTheme;
|
|
24530
24535
|
this.fb = fb;
|
|
24531
24536
|
/**
|
|
24532
24537
|
*
|
|
@@ -24534,105 +24539,105 @@ class MultiInputComponent {
|
|
|
24534
24539
|
* @type {Record<string, string | null | number>[]}
|
|
24535
24540
|
* @memberof MultiInputComponent
|
|
24536
24541
|
*/
|
|
24537
|
-
this.itemsList =
|
|
24542
|
+
this.itemsList = input.required();
|
|
24538
24543
|
/**
|
|
24539
24544
|
*
|
|
24540
24545
|
* @description The field to be displayed in the dropdown
|
|
24541
24546
|
* @type {string}
|
|
24542
24547
|
* @memberof MultiInputComponent
|
|
24543
24548
|
*/
|
|
24544
|
-
this.itemTextField =
|
|
24549
|
+
this.itemTextField = input.required();
|
|
24545
24550
|
/**
|
|
24546
24551
|
*
|
|
24547
24552
|
* @description The value to be displayed in the droddown
|
|
24548
24553
|
* @type {string}
|
|
24549
24554
|
* @memberof MultiInputComponent
|
|
24550
24555
|
*/
|
|
24551
|
-
this.itemValueField =
|
|
24556
|
+
this.itemValueField = input.required();
|
|
24557
|
+
/**
|
|
24558
|
+
*
|
|
24559
|
+
* @description The Value of the multi input
|
|
24560
|
+
* @type {MultiInputValue}
|
|
24561
|
+
* @memberof MultiInputComponent
|
|
24562
|
+
*/
|
|
24563
|
+
this.value = input();
|
|
24552
24564
|
/**
|
|
24553
24565
|
*
|
|
24554
24566
|
* @description Disables the multi input
|
|
24555
24567
|
* @type {boolean}
|
|
24556
24568
|
* @memberof MultiInputComponent
|
|
24557
24569
|
*/
|
|
24558
|
-
this.disabled = false;
|
|
24570
|
+
this.disabled = input(false, { transform: booleanAttribute });
|
|
24559
24571
|
/**
|
|
24560
24572
|
*
|
|
24561
24573
|
* @description Defines if the multi input is required
|
|
24562
24574
|
* @type {boolean}
|
|
24563
24575
|
* @memberof MultiInputComponent
|
|
24564
24576
|
*/
|
|
24565
|
-
this.required = false;
|
|
24577
|
+
this.required = input(false, { transform: booleanAttribute });
|
|
24566
24578
|
/**
|
|
24567
24579
|
*
|
|
24568
24580
|
* @description Defines the label of the multi input
|
|
24569
24581
|
* @type {string}
|
|
24570
24582
|
* @memberof MultiInputComponent
|
|
24571
24583
|
*/
|
|
24572
|
-
this.label = '';
|
|
24584
|
+
this.label = input('');
|
|
24573
24585
|
/**
|
|
24574
24586
|
*
|
|
24575
24587
|
* @description Defines the placeholder of the multi input
|
|
24576
24588
|
* @type {string}
|
|
24577
24589
|
* @memberof MultiInputComponent
|
|
24578
24590
|
*/
|
|
24579
|
-
this.placeholder = '';
|
|
24591
|
+
this.placeholder = input('');
|
|
24580
24592
|
/**
|
|
24581
24593
|
*
|
|
24582
24594
|
* @description Allow decimal values in the multi input
|
|
24583
24595
|
* @type {boolean}
|
|
24584
24596
|
* @memberof MultiInputComponent
|
|
24585
24597
|
*/
|
|
24586
|
-
this.allowDecimal = true;
|
|
24598
|
+
this.allowDecimal = input(true, { transform: booleanAttribute });
|
|
24587
24599
|
/**
|
|
24588
24600
|
*
|
|
24589
24601
|
* @description Allow negative values in the multi input
|
|
24590
24602
|
* @type {boolean}
|
|
24591
24603
|
* @memberof MultiInputComponent
|
|
24592
24604
|
*/
|
|
24593
|
-
this.allowNegative = true;
|
|
24594
|
-
/**
|
|
24595
|
-
*
|
|
24596
|
-
* @description The theme of the application
|
|
24597
|
-
* @type {ApplicationTheme}
|
|
24598
|
-
* @memberof MultiInputComponent
|
|
24599
|
-
*/
|
|
24600
|
-
this.applicationTheme = 'light';
|
|
24605
|
+
this.allowNegative = input(true, { transform: booleanAttribute });
|
|
24601
24606
|
/**
|
|
24602
24607
|
*
|
|
24603
24608
|
* @description The errors of the multi input
|
|
24604
24609
|
* @type {string[]}
|
|
24605
24610
|
* @memberof MultiInputComponent
|
|
24606
24611
|
*/
|
|
24607
|
-
this.errors = [];
|
|
24612
|
+
this.errors = input([]);
|
|
24608
24613
|
/**
|
|
24609
24614
|
*
|
|
24610
24615
|
* @description Hide built in errors for Reactive Forms
|
|
24611
24616
|
* @type {boolean}
|
|
24612
24617
|
* @memberof MultiInputComponent
|
|
24613
24618
|
*/
|
|
24614
|
-
this.hideBuiltInErrors = false;
|
|
24619
|
+
this.hideBuiltInErrors = input(false, { transform: booleanAttribute });
|
|
24615
24620
|
/**
|
|
24616
24621
|
*
|
|
24617
24622
|
* @description Hide label in errors
|
|
24618
24623
|
* @type {boolean}
|
|
24619
24624
|
* @memberof MultiInputComponent
|
|
24620
24625
|
*/
|
|
24621
|
-
this.hideLabelInErrors = false;
|
|
24626
|
+
this.hideLabelInErrors = input(false, { transform: booleanAttribute });
|
|
24622
24627
|
/**
|
|
24623
24628
|
*
|
|
24624
24629
|
* @description The maximum characters allowed in the multi input
|
|
24625
24630
|
* @type {number}
|
|
24626
24631
|
* @memberof MultiInputComponent
|
|
24627
24632
|
*/
|
|
24628
|
-
this.maxCharacters = 0;
|
|
24633
|
+
this.maxCharacters = input(0);
|
|
24629
24634
|
/**
|
|
24630
24635
|
*
|
|
24631
24636
|
* @description The validators to apply to input field
|
|
24632
24637
|
* @type {Validators[]}
|
|
24633
24638
|
* @memberof MultiInputComponent
|
|
24634
24639
|
*/
|
|
24635
|
-
this.validators = [];
|
|
24640
|
+
this.validators = input([]);
|
|
24636
24641
|
/**
|
|
24637
24642
|
*
|
|
24638
24643
|
* @description The width of the multi input
|
|
@@ -24650,44 +24655,60 @@ class MultiInputComponent {
|
|
|
24650
24655
|
* @ignore
|
|
24651
24656
|
*/
|
|
24652
24657
|
this.onTouch = () => { };
|
|
24653
|
-
this.showError = false;
|
|
24654
24658
|
this.multiInputForm = this.fb.group({
|
|
24655
24659
|
value: null,
|
|
24656
24660
|
});
|
|
24661
|
+
effect(() => {
|
|
24662
|
+
this.updateDisableState(this.disabled());
|
|
24663
|
+
});
|
|
24664
|
+
effect(() => {
|
|
24665
|
+
const maxCharacters = this.maxCharacters();
|
|
24666
|
+
if (maxCharacters) {
|
|
24667
|
+
this.inputControl?.addValidators(Validators.maxLength(maxCharacters));
|
|
24668
|
+
this.inputControl?.updateValueAndValidity();
|
|
24669
|
+
}
|
|
24670
|
+
});
|
|
24671
|
+
effect(() => {
|
|
24672
|
+
const inputValidators = this.validators();
|
|
24673
|
+
if (inputValidators?.length) {
|
|
24674
|
+
this.inputControl?.addValidators(inputValidators);
|
|
24675
|
+
this.inputControl?.updateValueAndValidity();
|
|
24676
|
+
}
|
|
24677
|
+
});
|
|
24678
|
+
effect(() => {
|
|
24679
|
+
const value = this.value();
|
|
24680
|
+
// skip in the context of angular Forms
|
|
24681
|
+
if (!this.ngControl) {
|
|
24682
|
+
this.addDropdownControl();
|
|
24683
|
+
this.patchForm(value);
|
|
24684
|
+
}
|
|
24685
|
+
});
|
|
24657
24686
|
if (this.ngControl) {
|
|
24658
24687
|
this.ngControl.valueAccessor = this;
|
|
24659
24688
|
}
|
|
24660
|
-
if (this.defaultAppTheme) {
|
|
24661
|
-
this.applicationTheme = this.defaultAppTheme;
|
|
24662
|
-
}
|
|
24663
24689
|
this.multiInputForm.valueChanges.pipe(takeUntilDestroyed()).subscribe(formValue => {
|
|
24664
24690
|
this.valueChanged(formValue);
|
|
24665
|
-
this.checkFormErrors();
|
|
24666
|
-
if (!formValue.value && !formValue[this.itemValueField]) {
|
|
24667
|
-
this.showError = true;
|
|
24668
|
-
}
|
|
24669
24691
|
});
|
|
24670
24692
|
}
|
|
24671
24693
|
ngOnInit() {
|
|
24672
24694
|
this.addDropdownControl();
|
|
24673
|
-
this.
|
|
24674
|
-
|
|
24675
|
-
this.inputControl?.addValidators(Validators.required);
|
|
24676
|
-
this.dropdownControl?.addValidators(Validators.required);
|
|
24677
|
-
}
|
|
24678
|
-
}
|
|
24679
|
-
ngOnChanges(changes) {
|
|
24680
|
-
if (changes['disabled']) {
|
|
24681
|
-
this.updateDisableState(this.disabled);
|
|
24695
|
+
if (this.ngControl) {
|
|
24696
|
+
this.ngControl.control?.addValidators(requiredMultiInput);
|
|
24682
24697
|
}
|
|
24683
24698
|
}
|
|
24684
24699
|
writeValue(value) {
|
|
24685
|
-
this.value = value;
|
|
24686
24700
|
this.addDropdownControl();
|
|
24687
|
-
this.
|
|
24701
|
+
this.patchForm(value);
|
|
24702
|
+
}
|
|
24703
|
+
patchForm(value) {
|
|
24704
|
+
if (value) {
|
|
24705
|
+
this.multiInputForm.patchValue(value);
|
|
24706
|
+
}
|
|
24707
|
+
else {
|
|
24708
|
+
this.multiInputForm.reset();
|
|
24709
|
+
}
|
|
24688
24710
|
}
|
|
24689
24711
|
setDisabledState(isDisabled) {
|
|
24690
|
-
this.disabled = isDisabled;
|
|
24691
24712
|
this.updateDisableState(isDisabled);
|
|
24692
24713
|
}
|
|
24693
24714
|
registerOnChange(fn) {
|
|
@@ -24700,60 +24721,32 @@ class MultiInputComponent {
|
|
|
24700
24721
|
this.valueChange.emit(value);
|
|
24701
24722
|
this.onChange(value);
|
|
24702
24723
|
}
|
|
24703
|
-
get value() {
|
|
24704
|
-
return this._value;
|
|
24705
|
-
}
|
|
24706
|
-
get hasRequiredValidator() {
|
|
24707
|
-
return !!this.ngControl.control?.hasValidator(Validators.required);
|
|
24708
|
-
}
|
|
24709
24724
|
get dropdownControl() {
|
|
24710
|
-
return this.multiInputForm.
|
|
24725
|
+
return this.multiInputForm.controls[this.itemValueField()];
|
|
24711
24726
|
}
|
|
24712
24727
|
get inputControl() {
|
|
24713
|
-
return this.multiInputForm.
|
|
24714
|
-
}
|
|
24715
|
-
checkFormErrors() {
|
|
24716
|
-
const hasErrors = this.inputControl?.errors || this.dropdownControl?.errors;
|
|
24717
|
-
if (this.ngControl) {
|
|
24718
|
-
this.ngControl.control?.setErrors(!!hasErrors ? { ...this.inputControl?.errors, ...this.dropdownControl?.errors } : null);
|
|
24719
|
-
}
|
|
24720
|
-
this.showError = !!hasErrors;
|
|
24728
|
+
return this.multiInputForm.controls.value;
|
|
24721
24729
|
}
|
|
24722
24730
|
markAsTouched() {
|
|
24723
24731
|
this.onTouch();
|
|
24724
|
-
if (this.ngControl &&
|
|
24725
|
-
((this.inputControl?.touched && this.dropdownControl?.touched) ||
|
|
24726
|
-
(!this.inputControl?.value && !this.dropdownControl?.value))) {
|
|
24727
|
-
this.ngControl.control?.markAsTouched();
|
|
24728
|
-
}
|
|
24729
24732
|
}
|
|
24730
24733
|
addDropdownControl() {
|
|
24731
|
-
if (!this.multiInputForm.value[this.itemValueField]) {
|
|
24732
|
-
this.multiInputForm.addControl(this.itemValueField, new FormControl(null), { emitEvent: false });
|
|
24733
|
-
this.updateDisableState(this.disabled);
|
|
24734
|
+
if (!this.multiInputForm.value[this.itemValueField()]) {
|
|
24735
|
+
this.multiInputForm.addControl(this.itemValueField(), new FormControl(null), { emitEvent: false });
|
|
24736
|
+
this.updateDisableState(this.disabled());
|
|
24734
24737
|
}
|
|
24735
24738
|
}
|
|
24736
24739
|
get controlHasError() {
|
|
24737
|
-
|
|
24738
|
-
|
|
24739
|
-
|
|
24740
|
-
|
|
24741
|
-
|
|
24742
|
-
|
|
24743
|
-
(!this.inputControl?.valid && !!this.inputControl?.touched) ||
|
|
24744
|
-
(!this.dropdownControl?.valid && !!this.dropdownControl?.touched);
|
|
24740
|
+
if (this.ngControl) {
|
|
24741
|
+
return !!(this.ngControl.errors && this.ngControl.touched);
|
|
24742
|
+
}
|
|
24743
|
+
else {
|
|
24744
|
+
return this.errors()?.length > 0;
|
|
24745
|
+
}
|
|
24745
24746
|
}
|
|
24746
24747
|
getValueLength() {
|
|
24747
24748
|
return this.inputControl?.value?.toString().length || 0;
|
|
24748
24749
|
}
|
|
24749
|
-
addValidation() {
|
|
24750
|
-
if (this.maxCharacters) {
|
|
24751
|
-
this.inputControl?.addValidators(Validators.maxLength(this.maxCharacters));
|
|
24752
|
-
}
|
|
24753
|
-
if (this.validators?.length) {
|
|
24754
|
-
this.inputControl?.addValidators(this.validators);
|
|
24755
|
-
}
|
|
24756
|
-
}
|
|
24757
24750
|
updateDisableState(state) {
|
|
24758
24751
|
if (state) {
|
|
24759
24752
|
this.multiInputForm.disable({ emitEvent: false });
|
|
@@ -24762,66 +24755,17 @@ class MultiInputComponent {
|
|
|
24762
24755
|
this.multiInputForm.enable({ emitEvent: false });
|
|
24763
24756
|
}
|
|
24764
24757
|
}
|
|
24765
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiInputComponent, deps: [{ token: i1$2.NgControl, optional: true, self: true }, { token:
|
|
24766
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MultiInputComponent, selector: "ui-multi-input", inputs: { itemsList: "itemsList", itemTextField: "itemTextField", itemValueField: "itemValueField", value: "value", disabled: ["disabled", "disabled", booleanAttribute], required: ["required", "required", booleanAttribute], label: "label", placeholder: "placeholder", allowDecimal: ["allowDecimal", "allowDecimal", booleanAttribute], allowNegative: ["allowNegative", "allowNegative", booleanAttribute], applicationTheme: "applicationTheme", errors: "errors", hideBuiltInErrors: ["hideBuiltInErrors", "hideBuiltInErrors", booleanAttribute], hideLabelInErrors: ["hideLabelInErrors", "hideLabelInErrors", booleanAttribute], maxCharacters: "maxCharacters", validators: "validators", fullWidth: "fullWidth" }, outputs: { valueChange: "valueChange" }, host: { properties: { "attr.theme": "this.applicationTheme", "class.full-width": "this.fullWidth", "class": "this.class" } }, usesOnChanges: true, ngImport: i0, template: "<div [formGroup]=\"multiInputForm\">\n <div class=\"controls-wrapper\">\n <ui-dropdown\n [hasError]=\"controlHasError\"\n [formControlName]=\"itemValueField\"\n [valueList]=\"itemsList\"\n [textField]=\"itemTextField\"\n [valueField]=\"itemValueField\"\n [showBottomContent]=\"false\"\n [allowClear]=\"false\"\n (closed)=\"markAsTouched(); checkFormErrors()\"\n ></ui-dropdown>\n\n <ui-field\n [hasError]=\"controlHasError\"\n [formControlName]=\"'value'\"\n [label]=\"label\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [hideBuiltInErrors]=\"true\"\n [showBottomContent]=\"false\"\n [allowOnlyDigits]=\"true\"\n [fullWidth]=\"fullWidth\"\n [allowNegative]=\"allowNegative\"\n (focusout)=\"markAsTouched(); checkFormErrors()\"\n ></ui-field>\n </div>\n\n <mat-hint class=\"info\" *ngIf=\"!controlHasError && maxCharacters && !errors?.length\">{{ getValueLength() }} / {{ maxCharacters }}</mat-hint>\n\n @if (errors?.length || (ngControl?.errors | hasValidationError)) {\n <mat-hint class=\"error\">\n @for (error of errors; track error) {\n <ui-icon\n [applicationTheme]=\"applicationTheme\"\n [name]=\"applicationTheme === 'classic' ? 'Error' : 'Error-in-line'\"\n ></ui-icon>{{ error }}\n }\n @if ((ngControl?.errors | hasValidationError) && !hideBuiltInErrors) {\n <ui-validation-error\n [touchedOn]=\"!controlHasError\"\n [ngControl]=\"ngControl\"\n [label]=\"hideLabelInErrors ? null : label\"\n ></ui-validation-error>\n }\n </mat-hint>\n }\n\n</div>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}:host.ui-multi-input{position:relative!important}:host.ui-multi-input .ng-untouched,:host.ui-multi-input .ng-touched{width:fit-content}:host.ui-multi-input.full-width .ng-untouched{width:100%}:host.ui-multi-input .controls-wrapper{display:flex}:host.ui-multi-input ::ng-deep ui-validation-error .errors{display:flex}:host.ui-multi-input ::ng-deep .ui-dropdown{max-width:120px}:host.ui-multi-input ::ng-deep .ui-dropdown .mdc-notched-outline__trailing,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-text-field-wrapper,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mdc-notched-outline__trailing{border-right-color:transparent!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important}:host.ui-multi-input ::ng-deep .ui-dropdown:hover .mdc-notched-outline__trailing,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-form-field-focused .mdc-notched-outline__trailing{border-right-color:#242424}:host.ui-multi-input ::ng-deep .ui-field .mdc-notched-outline__leading,:host.ui-multi-input ::ng-deep .ui-field .mat-mdc-text-field-wrapper{border-top-left-radius:0!important;border-bottom-left-radius:0!important}:host.ui-multi-input ::ng-deep .ui-field .mat-mdc-form-field-subscript-wrapper{position:absolute!important;left:0!important;top:48px!important}:host.ui-multi-input ::ng-deep .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix{padding-top:0!important;padding-bottom:0!important;min-height:48px!important;align-items:center!important;display:flex!important}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.info{display:block;color:#888;width:100%;text-align:right}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.error{display:flex;gap:4px;color:#e02800;align-items:center;padding:4px 0 10px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.error svg{color:#e02800}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint:before{display:none}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error{color:#e02800;font-size:12px;line-height:16px;letter-spacing:.4px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error .errors{display:flex;align-items:center;padding:4px 0 10px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error svg{margin-right:4px;color:#e02800;row-gap:0}:host.ui-multi-input .separator-line{border-left:1px solid var(--mdc-outlined-text-field-outline-color);height:40px;margin:0 12px -7px 8px}:host.ui-multi-input ::ng-deep .mat-mdc-select .mat-mdc-select-arrow-wrapper{display:none}:host.ui-multi-input ::ng-deep .mdc-text-field--outlined{padding-left:12px!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "component", type: DropdownComponent, selector: "ui-dropdown", inputs: ["label", "labelIcon", "isAIVariant", "name", "placeholder", "id", "value", "errors", "disabled", "valueList", "allowClear", "allowMultipleSelection", "required", "showBottomContent", "applicationTheme", "hideBuiltInErrors", "hideLabelInErrors", "textField", "valueField", "hasError", "companyColor", "panelClass"], outputs: ["closed", "opened"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: ValidationErrorComponent, selector: "ui-validation-error", inputs: ["ngControl", "touchedOn", "errorMessage", "label", "applicationTheme"] }, { kind: "component", type: FieldComponent, selector: "ui-field", inputs: ["fullWidth", "fullHeight", "label", "labelHtml", "labelIcon", "fieldName", "placeholder", "id", "value", "badgeVariant", "errors", "disabled", "required", "readOnly", "hintMessage", "type", "updateOnBlur", "allowOnlyDigits", "isAutocompleteOff", "allowNegative", "showBottomContent", "applicationTheme", "ariaLabel", "loading", "isValid", "maxCharacters", "trimOnBlur", "trimOnSubmit", "maxRows", "hasTextAreaCounter", "hideBuiltInErrors", "hideLabelInErrors", "max", "min", "textareaHeight", "borderless", "isAIVariant", "ariaLabelledby", "ariaDescribedby", "hasError"], outputs: ["validateEvent", "fieldBlur"] }, { kind: "pipe", type: HasValidationErrorPipe, name: "hasValidationError" }] }); }
|
|
24758
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiInputComponent, deps: [{ token: i1$2.NgControl, optional: true, self: true }, { token: i1$2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24759
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MultiInputComponent, selector: "ui-multi-input", inputs: { itemsList: { classPropertyName: "itemsList", publicName: "itemsList", isSignal: true, isRequired: true, transformFunction: null }, itemTextField: { classPropertyName: "itemTextField", publicName: "itemTextField", isSignal: true, isRequired: true, transformFunction: null }, itemValueField: { classPropertyName: "itemValueField", publicName: "itemValueField", isSignal: true, isRequired: true, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, allowDecimal: { classPropertyName: "allowDecimal", publicName: "allowDecimal", isSignal: true, isRequired: false, transformFunction: null }, allowNegative: { classPropertyName: "allowNegative", publicName: "allowNegative", isSignal: true, isRequired: false, transformFunction: null }, errors: { classPropertyName: "errors", publicName: "errors", isSignal: true, isRequired: false, transformFunction: null }, hideBuiltInErrors: { classPropertyName: "hideBuiltInErrors", publicName: "hideBuiltInErrors", isSignal: true, isRequired: false, transformFunction: null }, hideLabelInErrors: { classPropertyName: "hideLabelInErrors", publicName: "hideLabelInErrors", isSignal: true, isRequired: false, transformFunction: null }, maxCharacters: { classPropertyName: "maxCharacters", publicName: "maxCharacters", isSignal: true, isRequired: false, transformFunction: null }, validators: { classPropertyName: "validators", publicName: "validators", isSignal: true, isRequired: false, transformFunction: null }, fullWidth: { classPropertyName: "fullWidth", publicName: "fullWidth", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { properties: { "class.full-width": "this.fullWidth", "class": "this.class" } }, ngImport: i0, template: "<div [formGroup]=\"multiInputForm\">\n <div class=\"controls-wrapper\">\n <ui-dropdown\n [hasError]=\"controlHasError\"\n [formControlName]=\"itemValueField()\"\n [valueList]=\"itemsList()\"\n [textField]=\"itemTextField()\"\n [valueField]=\"itemValueField()\"\n [showBottomContent]=\"false\"\n [allowClear]=\"false\"\n (closed)=\"markAsTouched()\"\n ></ui-dropdown>\n\n <ui-field\n [hasError]=\"controlHasError\"\n formControlName=\"value\"\n [label]=\"label()\"\n [placeholder]=\"placeholder()\"\n [required]=\"required()\"\n [hideBuiltInErrors]=\"true\"\n [showBottomContent]=\"false\"\n [allowOnlyDigits]=\"true\"\n [fullWidth]=\"fullWidth\"\n [allowNegative]=\"allowNegative()\"\n (focusout)=\"markAsTouched()\"\n ></ui-field>\n </div>\n\n <mat-hint class=\"info\" *ngIf=\"!controlHasError && maxCharacters() && !errors()?.length\"\n >{{ getValueLength() }} / {{ maxCharacters() }}</mat-hint\n >\n\n @if (errors()?.length || (ngControl?.errors | hasValidationError)) {\n <mat-hint class=\"error\">\n @for (error of errors(); track error) {\n <ui-icon name=\"Error-in-line\"></ui-icon>{{ error }}\n }\n @if ((ngControl?.errors | hasValidationError) && !hideBuiltInErrors()) {\n <ui-validation-error\n [touchedOn]=\"!controlHasError\"\n [ngControl]=\"ngControl\"\n [label]=\"hideLabelInErrors() ? null : label()\"\n ></ui-validation-error>\n }\n </mat-hint>\n }\n <ng-content select=\"[custom-errors]\"></ng-content>\n</div>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}:host.ui-multi-input{position:relative!important}:host.ui-multi-input .ng-untouched,:host.ui-multi-input .ng-touched{width:fit-content}:host.ui-multi-input.full-width .ng-untouched{width:100%}:host.ui-multi-input .controls-wrapper{display:flex}:host.ui-multi-input ::ng-deep ui-validation-error .errors{display:flex}:host.ui-multi-input ::ng-deep .ui-dropdown{max-width:120px}:host.ui-multi-input ::ng-deep .ui-dropdown .mdc-notched-outline__trailing,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-text-field-wrapper,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mdc-notched-outline__trailing{border-right-color:transparent!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important}:host.ui-multi-input ::ng-deep .ui-dropdown:hover .mdc-notched-outline__trailing,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-form-field-focused .mdc-notched-outline__trailing{border-right-color:#242424}:host.ui-multi-input ::ng-deep .ui-field .mdc-notched-outline__leading,:host.ui-multi-input ::ng-deep .ui-field .mat-mdc-text-field-wrapper{border-top-left-radius:0!important;border-bottom-left-radius:0!important}:host.ui-multi-input ::ng-deep .ui-field .mat-mdc-form-field-subscript-wrapper{position:absolute!important;left:0!important;top:48px!important}:host.ui-multi-input ::ng-deep .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix{padding-top:0!important;padding-bottom:0!important;min-height:48px!important;align-items:center!important;display:flex!important}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.info{display:block;color:#888;width:100%;text-align:right}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.error{display:flex;gap:4px;color:#e02800;align-items:center;padding:4px 0 10px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.error svg{color:#e02800}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint:before{display:none}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error{color:#e02800;font-size:12px;line-height:16px;letter-spacing:.4px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error .errors{display:flex;align-items:center;padding:4px 0 10px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error svg{margin-right:4px;color:#e02800;row-gap:0}:host.ui-multi-input .separator-line{border-left:1px solid var(--mdc-outlined-text-field-outline-color);height:40px;margin:0 12px -7px 8px}:host.ui-multi-input ::ng-deep .mat-mdc-select .mat-mdc-select-arrow-wrapper{display:none}:host.ui-multi-input ::ng-deep .mdc-text-field--outlined{padding-left:12px!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "component", type: DropdownComponent, selector: "ui-dropdown", inputs: ["label", "labelIcon", "isAIVariant", "name", "placeholder", "id", "value", "errors", "disabled", "valueList", "allowClear", "allowMultipleSelection", "required", "showBottomContent", "applicationTheme", "hideBuiltInErrors", "hideLabelInErrors", "textField", "valueField", "hasError", "companyColor", "panelClass"], outputs: ["closed", "opened"] }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: ValidationErrorComponent, selector: "ui-validation-error", inputs: ["ngControl", "touchedOn", "errorMessage", "label", "applicationTheme"] }, { kind: "component", type: FieldComponent, selector: "ui-field", inputs: ["fullWidth", "fullHeight", "label", "labelHtml", "labelIcon", "fieldName", "placeholder", "id", "value", "badgeVariant", "errors", "disabled", "required", "readOnly", "hintMessage", "type", "updateOnBlur", "allowOnlyDigits", "isAutocompleteOff", "allowNegative", "showBottomContent", "applicationTheme", "ariaLabel", "loading", "isValid", "maxCharacters", "trimOnBlur", "trimOnSubmit", "maxRows", "hasTextAreaCounter", "hideBuiltInErrors", "hideLabelInErrors", "max", "min", "textareaHeight", "borderless", "isAIVariant", "ariaLabelledby", "ariaDescribedby", "hasError"], outputs: ["validateEvent", "fieldBlur"] }, { kind: "pipe", type: HasValidationErrorPipe, name: "hasValidationError" }] }); }
|
|
24767
24760
|
}
|
|
24768
24761
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiInputComponent, decorators: [{
|
|
24769
24762
|
type: Component,
|
|
24770
|
-
args: [{ selector: 'ui-multi-input', template: "<div [formGroup]=\"multiInputForm\">\n <div class=\"controls-wrapper\">\n <ui-dropdown\n [hasError]=\"controlHasError\"\n [formControlName]=\"itemValueField\"\n [valueList]=\"itemsList\"\n [textField]=\"itemTextField\"\n [valueField]=\"itemValueField\"\n [showBottomContent]=\"false\"\n [allowClear]=\"false\"\n (closed)=\"markAsTouched()
|
|
24763
|
+
args: [{ selector: 'ui-multi-input', template: "<div [formGroup]=\"multiInputForm\">\n <div class=\"controls-wrapper\">\n <ui-dropdown\n [hasError]=\"controlHasError\"\n [formControlName]=\"itemValueField()\"\n [valueList]=\"itemsList()\"\n [textField]=\"itemTextField()\"\n [valueField]=\"itemValueField()\"\n [showBottomContent]=\"false\"\n [allowClear]=\"false\"\n (closed)=\"markAsTouched()\"\n ></ui-dropdown>\n\n <ui-field\n [hasError]=\"controlHasError\"\n formControlName=\"value\"\n [label]=\"label()\"\n [placeholder]=\"placeholder()\"\n [required]=\"required()\"\n [hideBuiltInErrors]=\"true\"\n [showBottomContent]=\"false\"\n [allowOnlyDigits]=\"true\"\n [fullWidth]=\"fullWidth\"\n [allowNegative]=\"allowNegative()\"\n (focusout)=\"markAsTouched()\"\n ></ui-field>\n </div>\n\n <mat-hint class=\"info\" *ngIf=\"!controlHasError && maxCharacters() && !errors()?.length\"\n >{{ getValueLength() }} / {{ maxCharacters() }}</mat-hint\n >\n\n @if (errors()?.length || (ngControl?.errors | hasValidationError)) {\n <mat-hint class=\"error\">\n @for (error of errors(); track error) {\n <ui-icon name=\"Error-in-line\"></ui-icon>{{ error }}\n }\n @if ((ngControl?.errors | hasValidationError) && !hideBuiltInErrors()) {\n <ui-validation-error\n [touchedOn]=\"!controlHasError\"\n [ngControl]=\"ngControl\"\n [label]=\"hideLabelInErrors() ? null : label()\"\n ></ui-validation-error>\n }\n </mat-hint>\n }\n <ng-content select=\"[custom-errors]\"></ng-content>\n</div>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}:host.ui-multi-input{position:relative!important}:host.ui-multi-input .ng-untouched,:host.ui-multi-input .ng-touched{width:fit-content}:host.ui-multi-input.full-width .ng-untouched{width:100%}:host.ui-multi-input .controls-wrapper{display:flex}:host.ui-multi-input ::ng-deep ui-validation-error .errors{display:flex}:host.ui-multi-input ::ng-deep .ui-dropdown{max-width:120px}:host.ui-multi-input ::ng-deep .ui-dropdown .mdc-notched-outline__trailing,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-text-field-wrapper,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mdc-notched-outline__trailing{border-right-color:transparent!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important}:host.ui-multi-input ::ng-deep .ui-dropdown:hover .mdc-notched-outline__trailing,:host.ui-multi-input ::ng-deep .ui-dropdown .mat-mdc-form-field-focused .mdc-notched-outline__trailing{border-right-color:#242424}:host.ui-multi-input ::ng-deep .ui-field .mdc-notched-outline__leading,:host.ui-multi-input ::ng-deep .ui-field .mat-mdc-text-field-wrapper{border-top-left-radius:0!important;border-bottom-left-radius:0!important}:host.ui-multi-input ::ng-deep .ui-field .mat-mdc-form-field-subscript-wrapper{position:absolute!important;left:0!important;top:48px!important}:host.ui-multi-input ::ng-deep .mat-mdc-text-field-wrapper.mdc-text-field--outlined .mat-mdc-form-field-infix{padding-top:0!important;padding-bottom:0!important;min-height:48px!important;align-items:center!important;display:flex!important}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.info{display:block;color:#888;width:100%;text-align:right}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.error{display:flex;gap:4px;color:#e02800;align-items:center;padding:4px 0 10px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint.error svg{color:#e02800}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint:before{display:none}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error{color:#e02800;font-size:12px;line-height:16px;letter-spacing:.4px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error .errors{display:flex;align-items:center;padding:4px 0 10px}:host.ui-multi-input ::ng-deep .mat-mdc-form-field-hint ui-validation-error svg{margin-right:4px;color:#e02800;row-gap:0}:host.ui-multi-input .separator-line{border-left:1px solid var(--mdc-outlined-text-field-outline-color);height:40px;margin:0 12px -7px 8px}:host.ui-multi-input ::ng-deep .mat-mdc-select .mat-mdc-select-arrow-wrapper{display:none}:host.ui-multi-input ::ng-deep .mdc-text-field--outlined{padding-left:12px!important}\n"] }]
|
|
24771
24764
|
}], ctorParameters: () => [{ type: i1$2.NgControl, decorators: [{
|
|
24772
24765
|
type: Optional
|
|
24773
24766
|
}, {
|
|
24774
24767
|
type: Self
|
|
24775
|
-
}] }, { type:
|
|
24776
|
-
type: Optional
|
|
24777
|
-
}, {
|
|
24778
|
-
type: Inject,
|
|
24779
|
-
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
24780
|
-
}] }, { type: i1$2.FormBuilder }], propDecorators: { itemsList: [{
|
|
24781
|
-
type: Input,
|
|
24782
|
-
args: [{ required: true }]
|
|
24783
|
-
}], itemTextField: [{
|
|
24784
|
-
type: Input,
|
|
24785
|
-
args: [{ required: true }]
|
|
24786
|
-
}], itemValueField: [{
|
|
24787
|
-
type: Input,
|
|
24788
|
-
args: [{ required: true }]
|
|
24789
|
-
}], value: [{
|
|
24790
|
-
type: Input
|
|
24791
|
-
}], disabled: [{
|
|
24792
|
-
type: Input,
|
|
24793
|
-
args: [{ transform: booleanAttribute }]
|
|
24794
|
-
}], required: [{
|
|
24795
|
-
type: Input,
|
|
24796
|
-
args: [{ transform: booleanAttribute }]
|
|
24797
|
-
}], label: [{
|
|
24798
|
-
type: Input
|
|
24799
|
-
}], placeholder: [{
|
|
24800
|
-
type: Input
|
|
24801
|
-
}], allowDecimal: [{
|
|
24802
|
-
type: Input,
|
|
24803
|
-
args: [{ transform: booleanAttribute }]
|
|
24804
|
-
}], allowNegative: [{
|
|
24805
|
-
type: Input,
|
|
24806
|
-
args: [{ transform: booleanAttribute }]
|
|
24807
|
-
}], applicationTheme: [{
|
|
24808
|
-
type: HostBinding,
|
|
24809
|
-
args: ['attr.theme']
|
|
24810
|
-
}, {
|
|
24811
|
-
type: Input
|
|
24812
|
-
}], errors: [{
|
|
24813
|
-
type: Input
|
|
24814
|
-
}], hideBuiltInErrors: [{
|
|
24815
|
-
type: Input,
|
|
24816
|
-
args: [{ transform: booleanAttribute }]
|
|
24817
|
-
}], hideLabelInErrors: [{
|
|
24818
|
-
type: Input,
|
|
24819
|
-
args: [{ transform: booleanAttribute }]
|
|
24820
|
-
}], maxCharacters: [{
|
|
24821
|
-
type: Input
|
|
24822
|
-
}], validators: [{
|
|
24823
|
-
type: Input
|
|
24824
|
-
}], fullWidth: [{
|
|
24768
|
+
}] }, { type: i1$2.FormBuilder }], propDecorators: { fullWidth: [{
|
|
24825
24769
|
type: HostBinding,
|
|
24826
24770
|
args: ['class.full-width']
|
|
24827
24771
|
}, {
|
|
@@ -24878,6 +24822,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
24878
24822
|
|
|
24879
24823
|
const SIDE_PANEL_DATA = new InjectionToken('SIDE_PANEL_DATA');
|
|
24880
24824
|
|
|
24825
|
+
/* eslint-disable no-underscore-dangle */
|
|
24881
24826
|
var SidePanelAnimationState;
|
|
24882
24827
|
(function (SidePanelAnimationState) {
|
|
24883
24828
|
SidePanelAnimationState["Open"] = "open";
|
|
@@ -24900,6 +24845,34 @@ const SIDE_PANEL_CONFIG = new InjectionToken('SIDE_PANEL_CONFIG', {
|
|
|
24900
24845
|
providedIn: 'root',
|
|
24901
24846
|
factory: () => defaultSidePanelConfig,
|
|
24902
24847
|
});
|
|
24848
|
+
/**
|
|
24849
|
+
* Reference to a side panel opened via the SidePanelService.
|
|
24850
|
+
* Similar to MatDialogRef from Angular Material.
|
|
24851
|
+
*/
|
|
24852
|
+
class SidePanelRef {
|
|
24853
|
+
constructor() {
|
|
24854
|
+
this._afterClosed = new Subject();
|
|
24855
|
+
}
|
|
24856
|
+
/**
|
|
24857
|
+
* Observable that emits when the side panel is closed.
|
|
24858
|
+
* Emits the result passed to the close method, or undefined if no result was provided.
|
|
24859
|
+
*/
|
|
24860
|
+
afterClosed() {
|
|
24861
|
+
return this._afterClosed.asObservable();
|
|
24862
|
+
}
|
|
24863
|
+
/**
|
|
24864
|
+
* Closes the side panel with an optional result.
|
|
24865
|
+
* @param result Optional data to be emitted via afterClosed()
|
|
24866
|
+
*/
|
|
24867
|
+
close(result) {
|
|
24868
|
+
// This will be overridden by the service
|
|
24869
|
+
}
|
|
24870
|
+
/** @internal */
|
|
24871
|
+
_emitClose(result) {
|
|
24872
|
+
this._afterClosed.next(result);
|
|
24873
|
+
this._afterClosed.complete();
|
|
24874
|
+
}
|
|
24875
|
+
}
|
|
24903
24876
|
|
|
24904
24877
|
const sidePanelAnimationDuration = 150;
|
|
24905
24878
|
const sidePanelAnimation = [
|
|
@@ -24933,6 +24906,11 @@ class SidePanelService {
|
|
|
24933
24906
|
}
|
|
24934
24907
|
open(content, config, parentInjector) {
|
|
24935
24908
|
const panelConfig = { ...this.defaultSidePanelConfig, ...config };
|
|
24909
|
+
const sidePanelRef = new SidePanelRef();
|
|
24910
|
+
this.currentSidePanelRef = sidePanelRef;
|
|
24911
|
+
sidePanelRef.close = (result) => {
|
|
24912
|
+
this.close(result);
|
|
24913
|
+
};
|
|
24936
24914
|
if (!this.SidePanelComponentRef) {
|
|
24937
24915
|
const injector = this.createSidePanelInjector(panelConfig, parentInjector);
|
|
24938
24916
|
const SidePanelComponentRef = this.createSidePanelComponent(panelConfig.position, injector);
|
|
@@ -24942,16 +24920,21 @@ class SidePanelService {
|
|
|
24942
24920
|
this.loadTemplate(content);
|
|
24943
24921
|
}
|
|
24944
24922
|
else {
|
|
24945
|
-
this.loadComponent(content);
|
|
24923
|
+
this.loadComponent(content, sidePanelRef);
|
|
24946
24924
|
}
|
|
24947
24925
|
this.SidePanelComponentRef.instance.open();
|
|
24926
|
+
return sidePanelRef;
|
|
24948
24927
|
}
|
|
24949
|
-
close() {
|
|
24928
|
+
close(result) {
|
|
24950
24929
|
if (this.SidePanelComponentRef) {
|
|
24951
|
-
this.SidePanelComponentRef.instance.close();
|
|
24930
|
+
this.SidePanelComponentRef.instance.close(result);
|
|
24952
24931
|
}
|
|
24953
24932
|
}
|
|
24954
|
-
destroyComponent() {
|
|
24933
|
+
destroyComponent(result) {
|
|
24934
|
+
if (this.currentSidePanelRef) {
|
|
24935
|
+
this.currentSidePanelRef._emitClose(result);
|
|
24936
|
+
this.currentSidePanelRef = undefined;
|
|
24937
|
+
}
|
|
24955
24938
|
if (this.SidePanelComponentRef) {
|
|
24956
24939
|
this.appRef.detachView(this.SidePanelComponentRef.hostView);
|
|
24957
24940
|
this.SidePanelComponentRef.destroy();
|
|
@@ -24982,11 +24965,13 @@ class SidePanelService {
|
|
|
24982
24965
|
document.body.appendChild(sidePanelEl);
|
|
24983
24966
|
return sidePanelComponentRef;
|
|
24984
24967
|
}
|
|
24985
|
-
loadComponent(component) {
|
|
24968
|
+
loadComponent(component, sidePanelRef) {
|
|
24986
24969
|
const viewContainerRef = this.SidePanelComponentRef?.instance.sidePanelContainer;
|
|
24987
24970
|
if (viewContainerRef) {
|
|
24988
24971
|
viewContainerRef().clear();
|
|
24989
24972
|
this.contentComponentRef = viewContainerRef().createComponent(component);
|
|
24973
|
+
// Set the component instance on the SidePanelRef
|
|
24974
|
+
sidePanelRef.componentInstance = this.contentComponentRef.instance;
|
|
24990
24975
|
}
|
|
24991
24976
|
}
|
|
24992
24977
|
loadTemplate(template) {
|
|
@@ -25036,10 +25021,10 @@ class SidePanelComponent {
|
|
|
25036
25021
|
this.isOpen.set(true);
|
|
25037
25022
|
});
|
|
25038
25023
|
}
|
|
25039
|
-
close() {
|
|
25024
|
+
close(result) {
|
|
25040
25025
|
this.isOpen.set(false);
|
|
25041
25026
|
setTimeout(() => {
|
|
25042
|
-
this.sidePanelService.destroyComponent();
|
|
25027
|
+
this.sidePanelService.destroyComponent(result);
|
|
25043
25028
|
}, sidePanelAnimationDuration);
|
|
25044
25029
|
}
|
|
25045
25030
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidePanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -26654,5 +26639,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
26654
26639
|
* Generated bundle index. Do not edit.
|
|
26655
26640
|
*/
|
|
26656
26641
|
|
|
26657
|
-
export { AMOUNT_TAG_WIDTH, AccordionComponent, AccordionComponentModule, AiFeedbackComponent, AiFeedbackModule, AlertBannerComponent, AlertBannerComponentModule, Autocomplete, AutocompleteComponent, AutocompleteComponentModule, AvatarBackgroundColor, AvatarComponent, AvatarComponentModule, AvatarSize, BadgeColorEnum, BadgeComponent, BadgeComponentModule, BadgeVariantEnum, BreadcrumbComponent, BreadcrumbComponentModule, ButtonComponent, ButtonComponentModule, CardComponent, CardComponentModule, CheckboxComponent, CheckboxComponentModule, ChecklistComponent, Color, ColumnAlignment, ColumnAlignmentEnum, ColumnType, ColumnTypeEnum, ConfirmDialogComponent, ConfirmDialogComponentModule, DataPropertyGetterPipe, DatepickerComponent, DatepickerComponentModule, DeprecatedPaginatorComponent, DeprecatedPaginatorComponentModule, DialogComponent, DialogComponentModule, DialogService, DividerComponent, DividerComponentModule, DonutChartComponent, DonutChartComponentModule, DropdownComponent, DropdownComponentModule, DropdownVariation, ElevationShadowComponent, ElevationShadowComponentModule, ElevationType, EmptyStateComponent, EmptyStateComponentModule, FieldComponent, FieldComponentModule, FileUploadComponent, FileUploadComponentModule, FilterButtonComponent, FilterButtonComponentModule, GaussianChartComponent, GaussianChartComponentModule, IS_MOBILE_TOKEN, IconComponent, IconComponentModule, IconLabelComponent, IconLabelComponentModule, IconsService, InlineFieldComponent, InlineFieldComponentModule, Language, LanguageService, LargeSpiderChartSize, LogoComponent, LogoComponentModule, LogoPathEnum, LogoTypeEnum, MediaCardComponent, MediaDialogComponent, MemoizeFuncPipe, MultiInputComponent, MultiInputComponentModule, NavbarComponent, NavbarComponentModule, OverflowMenuComponent, OverflowMenuComponentModule, Padding, PageHeaderComponent, PageHeaderModule, PaginatorComponent, PaginatorComponentModule, PasswordComponent, PasswordComponentModule, PasswordStrengthComponent, PasswordStrengthComponentModule, PhoneInputComponent, PhoneInputComponentModule, ProgressBarComponent, ProgressBarComponentModule, RadialProgressComponent, RadialProgressComponentModule, RadialProgressSizeEnum, RadialProgressSizeValue, RadioButtonComponent, RadioButtonComponentModule, RatingComponent, RatingComponentModule, RebrandBadgeColorEnum, SIDE_PANEL_CONFIG, SIDE_PANEL_DATA, ScaleComponent, ScaleComponentModule, ScaleTableComponent, SegmentedBarComponent, SegmentedBarComponentModule, SegmentedButtonComponent, SegmentedButtonComponentModule, SelectableCardComponent, SelectableCardComponentModule, SidePanelAnimationState, SidePanelComponent, SidePanelConfig, SidePanelService, SideSheetComponent, SideSheetComponentModule, SideSheetService, SkeletonComponent, SkillAreaGroupTypes, SkillAreaTypes, SliderComponent, SliderComponentModule, SmallSpiderChartSize, SnackbarComponent, SnackbarComponentModule, SnackbarService, SpiderChartComponent, SpiderChartComponentModule, SpinnerComponent, SpinnerComponentModule, StepComponent, StepComponentModule, StepperComponent, StepperComponentModule, TabDirective, TableComponent, TableComponentModule, TabsComponent, TabsComponentModule, TagComponent, TagComponentModule, Timeout, ToggleComponent, ToggleComponentModule, TooltipComponent, TooltipComponentModule, TooltipPositionType, TooltipTemplateDirective, UniversalSkillsReportComponent, UniversalSkillsReportComponentModule, UniversalSkillsService, UniversalSkillsSpiderChartsComponent, UniversalSkillsSpiderChartsComponentModule, ValidationErrorComponent, ValidationErrorModule, defaultSidePanelConfig, fieldID, getAvailableLangs, iconSize, inlineFieldID };
|
|
26642
|
+
export { AMOUNT_TAG_WIDTH, AccordionComponent, AccordionComponentModule, AiFeedbackComponent, AiFeedbackModule, AlertBannerComponent, AlertBannerComponentModule, Autocomplete, AutocompleteComponent, AutocompleteComponentModule, AvatarBackgroundColor, AvatarComponent, AvatarComponentModule, AvatarSize, BadgeColorEnum, BadgeComponent, BadgeComponentModule, BadgeVariantEnum, BreadcrumbComponent, BreadcrumbComponentModule, ButtonComponent, ButtonComponentModule, CardComponent, CardComponentModule, CheckboxComponent, CheckboxComponentModule, ChecklistComponent, Color, ColumnAlignment, ColumnAlignmentEnum, ColumnType, ColumnTypeEnum, ConfirmDialogComponent, ConfirmDialogComponentModule, DataPropertyGetterPipe, DatepickerComponent, DatepickerComponentModule, DeprecatedPaginatorComponent, DeprecatedPaginatorComponentModule, DialogComponent, DialogComponentModule, DialogService, DividerComponent, DividerComponentModule, DonutChartComponent, DonutChartComponentModule, DropdownComponent, DropdownComponentModule, DropdownVariation, ElevationShadowComponent, ElevationShadowComponentModule, ElevationType, EmptyStateComponent, EmptyStateComponentModule, FieldComponent, FieldComponentModule, FileUploadComponent, FileUploadComponentModule, FilterButtonComponent, FilterButtonComponentModule, GaussianChartComponent, GaussianChartComponentModule, IS_MOBILE_TOKEN, IconComponent, IconComponentModule, IconLabelComponent, IconLabelComponentModule, IconsService, InlineFieldComponent, InlineFieldComponentModule, Language, LanguageService, LargeSpiderChartSize, LogoComponent, LogoComponentModule, LogoPathEnum, LogoTypeEnum, MediaCardComponent, MediaDialogComponent, MemoizeFuncPipe, MultiInputComponent, MultiInputComponentModule, NavbarComponent, NavbarComponentModule, OverflowMenuComponent, OverflowMenuComponentModule, Padding, PageHeaderComponent, PageHeaderModule, PaginatorComponent, PaginatorComponentModule, PasswordComponent, PasswordComponentModule, PasswordStrengthComponent, PasswordStrengthComponentModule, PhoneInputComponent, PhoneInputComponentModule, ProgressBarComponent, ProgressBarComponentModule, RadialProgressComponent, RadialProgressComponentModule, RadialProgressSizeEnum, RadialProgressSizeValue, RadioButtonComponent, RadioButtonComponentModule, RatingComponent, RatingComponentModule, RebrandBadgeColorEnum, SIDE_PANEL_CONFIG, SIDE_PANEL_DATA, ScaleComponent, ScaleComponentModule, ScaleTableComponent, SegmentedBarComponent, SegmentedBarComponentModule, SegmentedButtonComponent, SegmentedButtonComponentModule, SelectableCardComponent, SelectableCardComponentModule, SidePanelAnimationState, SidePanelComponent, SidePanelConfig, SidePanelRef, SidePanelService, SideSheetComponent, SideSheetComponentModule, SideSheetService, SkeletonComponent, SkillAreaGroupTypes, SkillAreaTypes, SliderComponent, SliderComponentModule, SmallSpiderChartSize, SnackbarComponent, SnackbarComponentModule, SnackbarService, SpiderChartComponent, SpiderChartComponentModule, SpinnerComponent, SpinnerComponentModule, StepComponent, StepComponentModule, StepperComponent, StepperComponentModule, TabDirective, TableComponent, TableComponentModule, TabsComponent, TabsComponentModule, TagComponent, TagComponentModule, Timeout, ToggleComponent, ToggleComponentModule, TooltipComponent, TooltipComponentModule, TooltipPositionType, TooltipTemplateDirective, UniversalSkillsReportComponent, UniversalSkillsReportComponentModule, UniversalSkillsService, UniversalSkillsSpiderChartsComponent, UniversalSkillsSpiderChartsComponentModule, ValidationErrorComponent, ValidationErrorModule, defaultSidePanelConfig, fieldID, getAvailableLangs, iconSize, inlineFieldID };
|
|
26658
26643
|
//# sourceMappingURL=testgorilla-tgo-ui.mjs.map
|