valtech-components 2.0.366 → 2.0.368
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/molecules/number-from-to/number-from-to.component.mjs +95 -0
- package/esm2022/lib/components/organisms/form/factory.mjs +22 -1
- package/esm2022/lib/components/organisms/form/form.component.mjs +10 -2
- package/esm2022/lib/components/types.mjs +10 -9
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/valtech-components.mjs +129 -12
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/number-from-to/number-from-to.component.d.ts +14 -0
- package/lib/components/organisms/form/factory.d.ts +12 -0
- package/lib/components/types.d.ts +17 -8
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { EventEmitter, Component, Input, Output, Injectable, inject, InjectionToken, Inject, ChangeDetectorRef, HostListener, Pipe, ChangeDetectionStrategy, ViewChild } from '@angular/core';
|
|
3
|
-
import { IonAvatar, IonCard, IonIcon, IonButton, IonSpinner, IonText, IonModal, IonHeader, IonToolbar, IonContent, IonButtons, IonTitle, IonProgressBar, IonCardContent, IonCardHeader, IonCardTitle, IonCardSubtitle, IonCheckbox, IonTextarea, IonDatetime, IonDatetimeButton, IonInput, IonSelect, IonSelectOption, IonLabel, IonRadioGroup, IonRadio, IonSearchbar, IonMenuButton, IonFooter, IonList, IonListHeader, IonNote
|
|
3
|
+
import { IonAvatar, IonCard, IonIcon, IonButton, IonSpinner, IonText, IonModal, IonHeader, IonToolbar, IonContent, IonButtons, IonTitle, IonProgressBar, IonCardContent, IonCardHeader, IonCardTitle, IonCardSubtitle, IonCheckbox, IonTextarea, IonDatetime, IonDatetimeButton, IonInput, IonSelect, IonSelectOption, IonLabel, IonItem, IonRadioGroup, IonRadio, IonSearchbar, IonMenuButton, IonFooter, IonList, IonListHeader, IonNote } from '@ionic/angular/standalone';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
5
|
import { CommonModule, NgStyle, AsyncPipe, NgFor, NgClass } from '@angular/common';
|
|
6
6
|
import { addIcons } from 'ionicons';
|
|
@@ -10,7 +10,7 @@ import { Router, RouterLink } from '@angular/router';
|
|
|
10
10
|
import { Browser } from '@capacitor/browser';
|
|
11
11
|
import * as i1$1 from '@angular/platform-browser';
|
|
12
12
|
import * as i1$2 from '@angular/forms';
|
|
13
|
-
import { ReactiveFormsModule, FormsModule, Validators } from '@angular/forms';
|
|
13
|
+
import { ReactiveFormsModule, FormControl, FormsModule, Validators } from '@angular/forms';
|
|
14
14
|
import { map as map$1 } from 'rxjs/operators';
|
|
15
15
|
import * as i1$3 from 'ng-otp-input';
|
|
16
16
|
import { NgOtpInputComponent, NgOtpInputModule } from 'ng-otp-input';
|
|
@@ -375,14 +375,15 @@ var InputType;
|
|
|
375
375
|
InputType[InputType["PASSWORD"] = 2] = "PASSWORD";
|
|
376
376
|
InputType[InputType["COMMENT"] = 3] = "COMMENT";
|
|
377
377
|
InputType[InputType["NUMBER"] = 4] = "NUMBER";
|
|
378
|
-
InputType[InputType["
|
|
379
|
-
InputType[InputType["
|
|
380
|
-
InputType[InputType["
|
|
381
|
-
InputType[InputType["
|
|
382
|
-
InputType[InputType["
|
|
383
|
-
InputType[InputType["
|
|
384
|
-
InputType[InputType["
|
|
385
|
-
InputType[InputType["
|
|
378
|
+
InputType[InputType["NUMBER_FROM_TO"] = 5] = "NUMBER_FROM_TO";
|
|
379
|
+
InputType[InputType["PIN_CODE"] = 6] = "PIN_CODE";
|
|
380
|
+
InputType[InputType["DATE"] = 7] = "DATE";
|
|
381
|
+
InputType[InputType["HOUR"] = 8] = "HOUR";
|
|
382
|
+
InputType[InputType["CHECK"] = 9] = "CHECK";
|
|
383
|
+
InputType[InputType["RADIO"] = 10] = "RADIO";
|
|
384
|
+
InputType[InputType["SELECT"] = 11] = "SELECT";
|
|
385
|
+
InputType[InputType["SEARCH_SELECT"] = 12] = "SEARCH_SELECT";
|
|
386
|
+
InputType[InputType["FILE"] = 13] = "FILE";
|
|
386
387
|
})(InputType || (InputType = {}));
|
|
387
388
|
/**
|
|
388
389
|
* Possible action types for a toolbar.
|
|
@@ -5030,6 +5031,95 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5030
5031
|
type: Input
|
|
5031
5032
|
}] } });
|
|
5032
5033
|
|
|
5034
|
+
class NumberFromToComponent {
|
|
5035
|
+
constructor() { }
|
|
5036
|
+
ngOnInit() {
|
|
5037
|
+
// Create separate controls for from/to values
|
|
5038
|
+
// The main control will store the combined value as an object
|
|
5039
|
+
this.fromControl = new FormControl();
|
|
5040
|
+
this.toControl = new FormControl();
|
|
5041
|
+
// Initialize with existing value if present
|
|
5042
|
+
if (this.props?.control?.value) {
|
|
5043
|
+
const value = typeof this.props.control.value === 'string' ? JSON.parse(this.props.control.value) : this.props.control.value;
|
|
5044
|
+
if (value && typeof value === 'object') {
|
|
5045
|
+
this.fromControl.setValue(value.from || null);
|
|
5046
|
+
this.toControl.setValue(value.to || null);
|
|
5047
|
+
}
|
|
5048
|
+
}
|
|
5049
|
+
// Apply default values if configured
|
|
5050
|
+
if (this.props?.withDefault || this.props?.value) {
|
|
5051
|
+
applyDefaultValueToControl(this.props);
|
|
5052
|
+
}
|
|
5053
|
+
// Sync changes back to main control
|
|
5054
|
+
this.fromControl.valueChanges.subscribe(() => {
|
|
5055
|
+
this.updateMainControl();
|
|
5056
|
+
});
|
|
5057
|
+
this.toControl.valueChanges.subscribe(() => {
|
|
5058
|
+
this.updateMainControl();
|
|
5059
|
+
});
|
|
5060
|
+
}
|
|
5061
|
+
updateMainControl() {
|
|
5062
|
+
const value = {
|
|
5063
|
+
from: this.fromControl.value,
|
|
5064
|
+
to: this.toControl.value,
|
|
5065
|
+
};
|
|
5066
|
+
this.props.control.setValue(value);
|
|
5067
|
+
this.props.control.markAsTouched();
|
|
5068
|
+
}
|
|
5069
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NumberFromToComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5070
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NumberFromToComponent, isStandalone: true, selector: "val-number-from-to", inputs: { props: "props" }, ngImport: i0, template: `
|
|
5071
|
+
<div class="number-from-to-container">
|
|
5072
|
+
<ion-label position="stacked">{{ props.fromLabel || 'Desde' }}</ion-label>
|
|
5073
|
+
<ion-input
|
|
5074
|
+
[formControl]="fromControl"
|
|
5075
|
+
type="number"
|
|
5076
|
+
[placeholder]="props.fromPlaceholder || props.placeholder"
|
|
5077
|
+
[min]="props.range?.min"
|
|
5078
|
+
[max]="props.range?.max"
|
|
5079
|
+
>
|
|
5080
|
+
</ion-input>
|
|
5081
|
+
|
|
5082
|
+
<ion-label position="stacked">{{ props.toLabel || 'Hasta' }}</ion-label>
|
|
5083
|
+
<ion-input
|
|
5084
|
+
[formControl]="toControl"
|
|
5085
|
+
type="number"
|
|
5086
|
+
[placeholder]="props.toPlaceholder || props.placeholder"
|
|
5087
|
+
[min]="props.range?.min"
|
|
5088
|
+
[max]="props.range?.max"
|
|
5089
|
+
>
|
|
5090
|
+
</ion-input>
|
|
5091
|
+
</div>
|
|
5092
|
+
`, isInline: true, styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "component", type: IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }] }); }
|
|
5093
|
+
}
|
|
5094
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NumberFromToComponent, decorators: [{
|
|
5095
|
+
type: Component,
|
|
5096
|
+
args: [{ selector: 'val-number-from-to', standalone: true, imports: [ReactiveFormsModule, IonInput, IonItem, IonLabel], template: `
|
|
5097
|
+
<div class="number-from-to-container">
|
|
5098
|
+
<ion-label position="stacked">{{ props.fromLabel || 'Desde' }}</ion-label>
|
|
5099
|
+
<ion-input
|
|
5100
|
+
[formControl]="fromControl"
|
|
5101
|
+
type="number"
|
|
5102
|
+
[placeholder]="props.fromPlaceholder || props.placeholder"
|
|
5103
|
+
[min]="props.range?.min"
|
|
5104
|
+
[max]="props.range?.max"
|
|
5105
|
+
>
|
|
5106
|
+
</ion-input>
|
|
5107
|
+
|
|
5108
|
+
<ion-label position="stacked">{{ props.toLabel || 'Hasta' }}</ion-label>
|
|
5109
|
+
<ion-input
|
|
5110
|
+
[formControl]="toControl"
|
|
5111
|
+
type="number"
|
|
5112
|
+
[placeholder]="props.toPlaceholder || props.placeholder"
|
|
5113
|
+
[min]="props.range?.min"
|
|
5114
|
+
[max]="props.range?.max"
|
|
5115
|
+
>
|
|
5116
|
+
</ion-input>
|
|
5117
|
+
</div>
|
|
5118
|
+
` }]
|
|
5119
|
+
}], ctorParameters: () => [], propDecorators: { props: [{
|
|
5120
|
+
type: Input
|
|
5121
|
+
}] } });
|
|
5122
|
+
|
|
5033
5123
|
/**
|
|
5034
5124
|
* val-password-input
|
|
5035
5125
|
*
|
|
@@ -7239,6 +7329,26 @@ const maxLength = (field, max) => {
|
|
|
7239
7329
|
error: `El campo ${field} no debe superar los ${max} caracteres.`,
|
|
7240
7330
|
};
|
|
7241
7331
|
};
|
|
7332
|
+
const createNumberFromToField = (name, label, fromLabel, toLabel, options) => {
|
|
7333
|
+
return {
|
|
7334
|
+
control: null, // Will be set by form component
|
|
7335
|
+
token: `number-from-to-${name}`,
|
|
7336
|
+
label,
|
|
7337
|
+
name,
|
|
7338
|
+
hint: options?.hint || '',
|
|
7339
|
+
placeholder: '',
|
|
7340
|
+
type: InputType.NUMBER_FROM_TO,
|
|
7341
|
+
order: options?.order || 0,
|
|
7342
|
+
validators: options?.validators || [],
|
|
7343
|
+
range: options?.range,
|
|
7344
|
+
errors: {},
|
|
7345
|
+
state: ComponentStates.ENABLED,
|
|
7346
|
+
fromLabel,
|
|
7347
|
+
toLabel,
|
|
7348
|
+
fromPlaceholder: options?.fromPlaceholder,
|
|
7349
|
+
toPlaceholder: options?.toPlaceholder,
|
|
7350
|
+
};
|
|
7351
|
+
};
|
|
7242
7352
|
|
|
7243
7353
|
class FormFooterComponent {
|
|
7244
7354
|
constructor() {
|
|
@@ -7475,6 +7585,9 @@ class FormComponent {
|
|
|
7475
7585
|
<ng-container *ngIf="f.type === types.NUMBER">
|
|
7476
7586
|
<val-number-input [props]="getFieldProp(f)"></val-number-input>
|
|
7477
7587
|
</ng-container>
|
|
7588
|
+
<ng-container *ngIf="f.type === types.NUMBER_FROM_TO">
|
|
7589
|
+
<val-number-from-to [props]="getFieldProp(f)"></val-number-from-to>
|
|
7590
|
+
</ng-container>
|
|
7478
7591
|
<ng-container *ngIf="f.type === types.PASSWORD">
|
|
7479
7592
|
<val-password-input [props]="getFieldProp(f)"></val-password-input>
|
|
7480
7593
|
</ng-container>
|
|
@@ -7501,7 +7614,7 @@ class FormComponent {
|
|
|
7501
7614
|
></val-button-group>
|
|
7502
7615
|
</form>
|
|
7503
7616
|
</div>
|
|
7504
|
-
`, isInline: true, styles: [":root{--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}@media (prefers-color-scheme: dark){:root{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.section{margin-top:1rem}.input{margin:.5rem 0}@media (min-width: 768px){.input{margin:.75rem 0}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextInputComponent, selector: "val-text-input", inputs: ["props"] }, { kind: "component", type: CheckInputComponent, selector: "val-check-input" }, { kind: "component", type: ButtonGroupComponent, selector: "val-button-group", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: DividerComponent, selector: "val-divider", inputs: ["props"] }, { kind: "component", type: HintComponent, selector: "val-hint", inputs: ["props"] }, { kind: "component", type: CommentInputComponent, selector: "val-comment-input", inputs: ["props"] }, { kind: "component", type: DateInputComponent, selector: "val-date-input", inputs: ["props"] }, { kind: "component", type: FileInputComponent, selector: "val-file-input", inputs: ["props"] }, { kind: "component", type: HourInputComponent, selector: "val-hour-input", inputs: ["props"] }, { kind: "component", type: EmailInputComponent, selector: "val-email-input", inputs: ["props"] }, { kind: "component", type: NumberInputComponent, selector: "val-number-input", inputs: ["props"] }, { kind: "component", type: RadioInputComponent, selector: "val-radio-input", inputs: ["props"] }, { kind: "component", type: PasswordInputComponent, selector: "val-password-input", inputs: ["props"] }, { kind: "component", type: PinInputComponent, selector: "val-pin-input", inputs: ["props"] }, { kind: "component", type: SelectSearchComponent, selector: "val-select-search", inputs: ["label", "labelProperty", "valueProperty", "multiple", "placeholder", "props"] }, { kind: "component", type: SearchSelectorComponent, selector: "val-select-input", inputs: ["props"] }] }); }
|
|
7617
|
+
`, isInline: true, styles: [":root{--ion-color-primary: #7026df;--ion-color-primary-rgb: 112, 38, 223;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #6321c4;--ion-color-primary-tint: #7e3ce2;--ion-color-secondary: #e2ccff;--ion-color-secondary-rgb: 226, 204, 255;--ion-color-secondary-contrast: #000000;--ion-color-secondary-contrast-rgb: 0, 0, 0;--ion-color-secondary-shade: #c7b4e0;--ion-color-secondary-tint: #e5d1ff;--ion-color-texti: #354c69;--ion-color-texti-rgb: 53, 76, 105;--ion-color-texti-contrast: #ffffff;--ion-color-texti-contrast-rgb: 255, 255, 255;--ion-color-texti-shade: #2f435c;--ion-color-texti-tint: #495e78;--ion-color-darki: #090f1b;--ion-color-darki-rgb: 9, 15, 27;--ion-color-darki-contrast: #ffffff;--ion-color-darki-contrast-rgb: 255, 255, 255;--ion-color-darki-shade: #080d18;--ion-color-darki-tint: #222732;--ion-color-medium: #9e9e9e;--ion-color-medium-rgb: 158, 158, 158;--ion-color-medium-contrast: #000000;--ion-color-medium-contrast-rgb: 0, 0, 0;--ion-color-medium-shade: #8b8b8b;--ion-color-medium-tint: #a8a8a8;--swiper-pagination-color: var(--ion-color-primary);--swiper-navigation-color: var(--ion-color-primary);--swiper-pagination-bullet-inactive-color: var(--ion-color-medium)}@media (prefers-color-scheme: dark){:root{--ion-color-texti: #8fc1ff;--ion-color-texti-rgb: 143, 193, 255;--ion-color-texti-contrast: #000000;--ion-color-texti-contrast-rgb: 0, 0, 0;--ion-color-texti-shade: #7eaae0;--ion-color-texti-tint: #9ac7ff;--ion-color-darki: #ffffff;--ion-color-darki-rgb: 255, 255, 255;--ion-color-darki-contrast: #000000;--ion-color-darki-contrast-rgb: 0, 0, 0;--ion-color-darki-shade: #e0e0e0;--ion-color-darki-tint: #ffffff;--ion-color-primary: #8f49f8;--ion-color-primary-rgb: 143, 73, 248;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #7e40da;--ion-color-primary-tint: #9a5bf9}}.ion-color-texti{--ion-color-base: var(--ion-color-texti);--ion-color-base-rgb: var(--ion-color-texti-rgb);--ion-color-contrast: var(--ion-color-texti-contrast);--ion-color-contrast-rgb: var(--ion-color-texti-contrast-rgb);--ion-color-shade: var(--ion-color-texti-shade);--ion-color-tint: var(--ion-color-texti-tint)}.ion-color-darki{--ion-color-base: var(--ion-color-darki);--ion-color-base-rgb: var(--ion-color-darki-rgb);--ion-color-contrast: var(--ion-color-darki-contrast);--ion-color-contrast-rgb: var(--ion-color-darki-contrast-rgb);--ion-color-shade: var(--ion-color-darki-shade);--ion-color-tint: var(--ion-color-darki-tint)}.section{margin-top:1rem}.input{margin:.5rem 0}@media (min-width: 768px){.input{margin:.75rem 0}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: TextInputComponent, selector: "val-text-input", inputs: ["props"] }, { kind: "component", type: CheckInputComponent, selector: "val-check-input" }, { kind: "component", type: ButtonGroupComponent, selector: "val-button-group", inputs: ["props"], outputs: ["onClick"] }, { kind: "component", type: DividerComponent, selector: "val-divider", inputs: ["props"] }, { kind: "component", type: HintComponent, selector: "val-hint", inputs: ["props"] }, { kind: "component", type: CommentInputComponent, selector: "val-comment-input", inputs: ["props"] }, { kind: "component", type: DateInputComponent, selector: "val-date-input", inputs: ["props"] }, { kind: "component", type: FileInputComponent, selector: "val-file-input", inputs: ["props"] }, { kind: "component", type: HourInputComponent, selector: "val-hour-input", inputs: ["props"] }, { kind: "component", type: EmailInputComponent, selector: "val-email-input", inputs: ["props"] }, { kind: "component", type: NumberInputComponent, selector: "val-number-input", inputs: ["props"] }, { kind: "component", type: NumberFromToComponent, selector: "val-number-from-to", inputs: ["props"] }, { kind: "component", type: RadioInputComponent, selector: "val-radio-input", inputs: ["props"] }, { kind: "component", type: PasswordInputComponent, selector: "val-password-input", inputs: ["props"] }, { kind: "component", type: PinInputComponent, selector: "val-pin-input", inputs: ["props"] }, { kind: "component", type: SelectSearchComponent, selector: "val-select-search", inputs: ["label", "labelProperty", "valueProperty", "multiple", "placeholder", "props"] }, { kind: "component", type: SearchSelectorComponent, selector: "val-select-input", inputs: ["props"] }] }); }
|
|
7505
7618
|
}
|
|
7506
7619
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormComponent, decorators: [{
|
|
7507
7620
|
type: Component,
|
|
@@ -7521,6 +7634,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
7521
7634
|
HourInputComponent,
|
|
7522
7635
|
EmailInputComponent,
|
|
7523
7636
|
NumberInputComponent,
|
|
7637
|
+
NumberFromToComponent,
|
|
7524
7638
|
RadioInputComponent,
|
|
7525
7639
|
PasswordInputComponent,
|
|
7526
7640
|
PinInputComponent,
|
|
@@ -7565,6 +7679,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
7565
7679
|
<ng-container *ngIf="f.type === types.NUMBER">
|
|
7566
7680
|
<val-number-input [props]="getFieldProp(f)"></val-number-input>
|
|
7567
7681
|
</ng-container>
|
|
7682
|
+
<ng-container *ngIf="f.type === types.NUMBER_FROM_TO">
|
|
7683
|
+
<val-number-from-to [props]="getFieldProp(f)"></val-number-from-to>
|
|
7684
|
+
</ng-container>
|
|
7568
7685
|
<ng-container *ngIf="f.type === types.PASSWORD">
|
|
7569
7686
|
<val-password-input [props]="getFieldProp(f)"></val-password-input>
|
|
7570
7687
|
</ng-container>
|
|
@@ -8920,5 +9037,5 @@ function createContentHelper(langService, className) {
|
|
|
8920
9037
|
* Generated bundle index. Do not edit.
|
|
8921
9038
|
*/
|
|
8922
9039
|
|
|
8923
|
-
export { ARTICLE_SPACING, ActionHeaderComponent, ActionType, AlertBoxComponent, ArticleBuilder, ArticleComponent, AvatarComponent, BannerComponent, BaseDefault, BoxComponent, ButtonComponent, ButtonGroupComponent, CardComponent, CardSection, CardType, CheckInputComponent, ClearDefault, ClearDefaultBlock, ClearDefaultFull, ClearDefaultRound, ClearDefaultRoundBlock, ClearDefaultRoundFull, CodeDisplayComponent, CommandDisplayComponent, CommentInputComponent, ComponentStates, ContentLoaderComponent, DateInputComponent, DisplayComponent, DividerComponent, DownloadService, EmailInputComponent, ExpandableTextComponent, FileInputComponent, FooterComponent, FormComponent, FormFooterComponent, GlobalContent, HeaderComponent, HintComponent, HourInputComponent, HrefComponent, Icon, IconComponent, IconService, ImageComponent, InAppBrowserService, InfoComponent, InputType, ItemListComponent, LANGUAGES, LangService, LanguageSelectorComponent, LayeredCardComponent, LayoutComponent, LinkComponent, LinkProcessorService, LinksCakeComponent, LocalStorageService, MOTION, NavigationService, NoContentComponent, NotesBoxComponent, NumberInputComponent, OutlineDefault, OutlineDefaultBlock, OutlineDefaultFull, OutlineDefaultRound, OutlineDefaultRoundBlock, OutlineDefaultRoundFull, PasswordInputComponent, PillComponent, PinInputComponent, PlainCodeBoxComponent, PopoverSelectorComponent, PrimarySolidBlockButton, PrimarySolidBlockHrefButton, PrimarySolidBlockIconButton, PrimarySolidBlockIconHrefButton, PrimarySolidDefaultRoundButton, PrimarySolidDefaultRoundHrefButton, PrimarySolidDefaultRoundIconButton, PrimarySolidDefaultRoundIconHrefButton, PrimarySolidFullButton, PrimarySolidFullHrefButton, PrimarySolidFullIconButton, PrimarySolidFullIconHrefButton, PrimarySolidLargeRoundButton, PrimarySolidLargeRoundHrefButton, PrimarySolidLargeRoundIconButton, PrimarySolidLargeRoundIconHrefButton, PrimarySolidSmallRoundButton, PrimarySolidSmallRoundHrefButton, PrimarySolidSmallRoundIconButton, PrimarySolidSmallRoundIconHrefButton, ProcessLinksPipe, ProgressBarComponent, ProgressStatusComponent, PrompterComponent, RadioInputComponent, SearchSelectorComponent, SearchbarComponent, SecondarySolidBlockButton, SecondarySolidBlockHrefButton, SecondarySolidBlockIconButton, SecondarySolidBlockIconHrefButton, SecondarySolidDefaultRoundButton, SecondarySolidDefaultRoundHrefButton, SecondarySolidDefaultRoundIconButton, SecondarySolidDefaultRoundIconHrefButton, SecondarySolidFullButton, SecondarySolidFullHrefButton, SecondarySolidFullIconButton, SecondarySolidFullIconHrefButton, SecondarySolidLargeRoundButton, SecondarySolidLargeRoundHrefButton, SecondarySolidLargeRoundIconButton, SecondarySolidLargeRoundIconHrefButton, SecondarySolidSmallRoundButton, SecondarySolidSmallRoundHrefButton, SecondarySolidSmallRoundIconButton, SecondarySolidSmallRoundIconHrefButton, SelectSearchComponent, SimpleComponent, SolidBlockButton, SolidDefault, SolidDefaultBlock, SolidDefaultButton, SolidDefaultFull, SolidDefaultRound, SolidDefaultRoundBlock, SolidDefaultRoundButton, SolidDefaultRoundFull, SolidFullButton, SolidLargeButton, SolidLargeRoundButton, SolidSmallButton, SolidSmallRoundButton, TextComponent, TextContent, TextInputComponent, ThemeOption, ThemeService, TitleBlockComponent, TitleComponent, ToastService, ToolbarActionType, ToolbarComponent, ValtechConfigService, WizardComponent, WizardFooterComponent, applyDefaultValueToControl, content, createButtonProps, createContentHelper, createDisplayProps, createReactiveContentMetadata, createTextProps, createTitleProps, extractContentConfig, extractContentConfigWithInterpolation, fromContent, fromContentWithInterpolation, fromMultipleContent, globalContentData, goToTop, interpolateContent, interpolateStaticContent, isAtEnd, maxLength, replaceSpecialChars, resolveColor, resolveInputDefaultValue, shouldUseReactiveContent, shouldUseReactiveContentWithInterpolation };
|
|
9040
|
+
export { ARTICLE_SPACING, ActionHeaderComponent, ActionType, AlertBoxComponent, ArticleBuilder, ArticleComponent, AvatarComponent, BannerComponent, BaseDefault, BoxComponent, ButtonComponent, ButtonGroupComponent, CardComponent, CardSection, CardType, CheckInputComponent, ClearDefault, ClearDefaultBlock, ClearDefaultFull, ClearDefaultRound, ClearDefaultRoundBlock, ClearDefaultRoundFull, CodeDisplayComponent, CommandDisplayComponent, CommentInputComponent, ComponentStates, ContentLoaderComponent, DateInputComponent, DisplayComponent, DividerComponent, DownloadService, EmailInputComponent, ExpandableTextComponent, FileInputComponent, FooterComponent, FormComponent, FormFooterComponent, GlobalContent, HeaderComponent, HintComponent, HourInputComponent, HrefComponent, Icon, IconComponent, IconService, ImageComponent, InAppBrowserService, InfoComponent, InputType, ItemListComponent, LANGUAGES, LangService, LanguageSelectorComponent, LayeredCardComponent, LayoutComponent, LinkComponent, LinkProcessorService, LinksCakeComponent, LocalStorageService, MOTION, NavigationService, NoContentComponent, NotesBoxComponent, NumberFromToComponent, NumberInputComponent, OutlineDefault, OutlineDefaultBlock, OutlineDefaultFull, OutlineDefaultRound, OutlineDefaultRoundBlock, OutlineDefaultRoundFull, PasswordInputComponent, PillComponent, PinInputComponent, PlainCodeBoxComponent, PopoverSelectorComponent, PrimarySolidBlockButton, PrimarySolidBlockHrefButton, PrimarySolidBlockIconButton, PrimarySolidBlockIconHrefButton, PrimarySolidDefaultRoundButton, PrimarySolidDefaultRoundHrefButton, PrimarySolidDefaultRoundIconButton, PrimarySolidDefaultRoundIconHrefButton, PrimarySolidFullButton, PrimarySolidFullHrefButton, PrimarySolidFullIconButton, PrimarySolidFullIconHrefButton, PrimarySolidLargeRoundButton, PrimarySolidLargeRoundHrefButton, PrimarySolidLargeRoundIconButton, PrimarySolidLargeRoundIconHrefButton, PrimarySolidSmallRoundButton, PrimarySolidSmallRoundHrefButton, PrimarySolidSmallRoundIconButton, PrimarySolidSmallRoundIconHrefButton, ProcessLinksPipe, ProgressBarComponent, ProgressStatusComponent, PrompterComponent, RadioInputComponent, SearchSelectorComponent, SearchbarComponent, SecondarySolidBlockButton, SecondarySolidBlockHrefButton, SecondarySolidBlockIconButton, SecondarySolidBlockIconHrefButton, SecondarySolidDefaultRoundButton, SecondarySolidDefaultRoundHrefButton, SecondarySolidDefaultRoundIconButton, SecondarySolidDefaultRoundIconHrefButton, SecondarySolidFullButton, SecondarySolidFullHrefButton, SecondarySolidFullIconButton, SecondarySolidFullIconHrefButton, SecondarySolidLargeRoundButton, SecondarySolidLargeRoundHrefButton, SecondarySolidLargeRoundIconButton, SecondarySolidLargeRoundIconHrefButton, SecondarySolidSmallRoundButton, SecondarySolidSmallRoundHrefButton, SecondarySolidSmallRoundIconButton, SecondarySolidSmallRoundIconHrefButton, SelectSearchComponent, SimpleComponent, SolidBlockButton, SolidDefault, SolidDefaultBlock, SolidDefaultButton, SolidDefaultFull, SolidDefaultRound, SolidDefaultRoundBlock, SolidDefaultRoundButton, SolidDefaultRoundFull, SolidFullButton, SolidLargeButton, SolidLargeRoundButton, SolidSmallButton, SolidSmallRoundButton, TextComponent, TextContent, TextInputComponent, ThemeOption, ThemeService, TitleBlockComponent, TitleComponent, ToastService, ToolbarActionType, ToolbarComponent, ValtechConfigService, WizardComponent, WizardFooterComponent, applyDefaultValueToControl, content, createButtonProps, createContentHelper, createDisplayProps, createNumberFromToField, createReactiveContentMetadata, createTextProps, createTitleProps, extractContentConfig, extractContentConfigWithInterpolation, fromContent, fromContentWithInterpolation, fromMultipleContent, globalContentData, goToTop, interpolateContent, interpolateStaticContent, isAtEnd, maxLength, replaceSpecialChars, resolveColor, resolveInputDefaultValue, shouldUseReactiveContent, shouldUseReactiveContentWithInterpolation };
|
|
8924
9041
|
//# sourceMappingURL=valtech-components.mjs.map
|