@ng-nest/ui 20.0.6 → 20.0.7
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/auto-complete/index.d.ts +42 -4
- package/cascade/index.d.ts +18 -3
- package/checkbox/index.d.ts +1 -1
- package/color-picker/index.d.ts +18 -3
- package/core/index.d.ts +31 -1
- package/date-picker/index.d.ts +29 -4
- package/fesm2022/ng-nest-ui-auto-complete.mjs +42 -6
- package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-cascade.mjs +11 -5
- package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-color-picker.mjs +8 -3
- package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-date-picker.mjs +24 -14
- package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-input-number.mjs +8 -3
- package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-input.mjs +8 -3
- package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-scrollable.mjs +136 -0
- package/fesm2022/ng-nest-ui-scrollable.mjs.map +1 -0
- package/fesm2022/ng-nest-ui-select.mjs +8 -3
- package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-table-view.mjs +345 -0
- package/fesm2022/ng-nest-ui-table-view.mjs.map +1 -0
- package/fesm2022/ng-nest-ui-table.mjs +2 -2
- package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-textarea.mjs +8 -3
- package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-picker.mjs +14 -3
- package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree-select.mjs +33 -6
- package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui.mjs +2 -0
- package/fesm2022/ng-nest-ui.mjs.map +1 -1
- package/index.d.ts +2 -0
- package/input/index.d.ts +18 -3
- package/input-number/index.d.ts +18 -3
- package/package.json +40 -32
- package/radio/index.d.ts +1 -1
- package/scrollable/index.d.ts +41 -0
- package/select/index.d.ts +18 -3
- package/table-view/index.d.ts +106 -0
- package/textarea/index.d.ts +18 -3
- package/time-picker/index.d.ts +23 -3
- package/tree-select/index.d.ts +40 -4
|
@@ -22,6 +22,11 @@ const X_INPUT_NUMBER_CONFIG_NAME = 'inputNumber';
|
|
|
22
22
|
class XInputNumberProperty extends XFormControlFunction(X_INPUT_NUMBER_CONFIG_NAME) {
|
|
23
23
|
constructor() {
|
|
24
24
|
super(...arguments);
|
|
25
|
+
/**
|
|
26
|
+
* @zh_CN 形态变体
|
|
27
|
+
* @en_US Input variant
|
|
28
|
+
*/
|
|
29
|
+
this.variant = input(this.config?.variant ?? 'outlined');
|
|
25
30
|
/**
|
|
26
31
|
* @zh_CN 最小值
|
|
27
32
|
* @en_US Minimum
|
|
@@ -144,7 +149,7 @@ class XInputNumberProperty extends XFormControlFunction(X_INPUT_NUMBER_CONFIG_NA
|
|
|
144
149
|
this.inputValidator = input();
|
|
145
150
|
}
|
|
146
151
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputNumberProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
147
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XInputNumberProperty, isStandalone: true, selector: "x-input-number-property", inputs: { min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, debounce: { classPropertyName: "debounce", publicName: "debounce", isSignal: true, isRequired: false, transformFunction: null }, precision: { classPropertyName: "precision", publicName: "precision", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, formatter: { classPropertyName: "formatter", publicName: "formatter", isSignal: true, isRequired: false, transformFunction: null }, hiddenButton: { classPropertyName: "hiddenButton", publicName: "hiddenButton", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", 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 }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
152
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XInputNumberProperty, isStandalone: true, selector: "x-input-number-property", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, debounce: { classPropertyName: "debounce", publicName: "debounce", isSignal: true, isRequired: false, transformFunction: null }, precision: { classPropertyName: "precision", publicName: "precision", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, formatter: { classPropertyName: "formatter", publicName: "formatter", isSignal: true, isRequired: false, transformFunction: null }, hiddenButton: { classPropertyName: "hiddenButton", publicName: "hiddenButton", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", 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 }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
148
153
|
}
|
|
149
154
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputNumberProperty, decorators: [{
|
|
150
155
|
type: Component,
|
|
@@ -280,11 +285,11 @@ class XInputNumberComponent extends XInputNumberProperty {
|
|
|
280
285
|
this.displayValue.set(displayValue);
|
|
281
286
|
}
|
|
282
287
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputNumberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
283
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XInputNumberComponent, isStandalone: true, selector: "x-input-number", providers: [XValueAccessor(XInputNumberComponent)], viewQueries: [{ propertyName: "inputNumber", first: true, predicate: ["inputNumber"], descendants: true, isSignal: true }, { propertyName: "inputEleRef", first: true, predicate: ["inputEleRef"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div #inputNumber class=\"x-input-number\" [class.x-input-number-hidden-button]=\"hiddenButton()\">\r\n <div class=\"x-input-number-row\">\r\n <ng-template #beforeButtonTpl>\r\n <x-button\r\n class=\"x-input-number-reduce\"\r\n icon=\"fto-minus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || minDisabled()\"\r\n (click)=\"!minDisabled() && plus($event, step(), false); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!minDisabled() && down($event, step(), false)\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n ></x-button>\r\n </ng-template>\r\n <x-input\r\n #inputEleRef\r\n class=\"x-input-number-input\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [iconSpin]=\"iconSpin()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [ngModel]=\"displayValue()\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"hiddenButton() ? '' : beforeButtonTpl\"\r\n [after]=\"hiddenButton() ? '' : afterButtonTpl\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n (xInput)=\"onInput($event); formControlValidator()\"\r\n ></x-input>\r\n <ng-template #afterButtonTpl>\r\n <x-button\r\n class=\"x-input-number-plus\"\r\n icon=\"fto-plus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || maxDisabled()\"\r\n (click)=\"!maxDisabled() && plus($event, step()); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!maxDisabled() && down($event, step())\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n ></x-button>\r\n </ng-template>\r\n @if (invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input-number{display:inline-block;width:12rem}.x-input-number{margin:0;padding:0}.x-input-number,.x-input-number-input{width:100%}.x-input-number-input input{text-align:center}.x-input-number-hidden-button .x-input-number-input input{text-align:left}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "component", type: XButtonComponent, selector: "x-button" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
288
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XInputNumberComponent, isStandalone: true, selector: "x-input-number", providers: [XValueAccessor(XInputNumberComponent)], viewQueries: [{ propertyName: "inputNumber", first: true, predicate: ["inputNumber"], descendants: true, isSignal: true }, { propertyName: "inputEleRef", first: true, predicate: ["inputEleRef"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div #inputNumber class=\"x-input-number\" [class.x-input-number-hidden-button]=\"hiddenButton()\">\r\n <div class=\"x-input-number-row\">\r\n <ng-template #beforeButtonTpl>\r\n <x-button\r\n class=\"x-input-number-reduce\"\r\n icon=\"fto-minus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || minDisabled()\"\r\n (click)=\"!minDisabled() && plus($event, step(), false); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!minDisabled() && down($event, step(), false)\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n [text]=\"['borderless', 'underlined'].includes(variant())\"\r\n ></x-button>\r\n </ng-template>\r\n <x-input\r\n #inputEleRef\r\n class=\"x-input-number-input\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [iconSpin]=\"iconSpin()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [ngModel]=\"displayValue()\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"hiddenButton() ? '' : beforeButtonTpl\"\r\n [after]=\"hiddenButton() ? '' : afterButtonTpl\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [variant]=\"variant()\"\r\n (xInput)=\"onInput($event); formControlValidator()\"\r\n ></x-input>\r\n <ng-template #afterButtonTpl>\r\n <x-button\r\n class=\"x-input-number-plus\"\r\n icon=\"fto-plus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || maxDisabled()\"\r\n (click)=\"!maxDisabled() && plus($event, step()); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!maxDisabled() && down($event, step())\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n [text]=\"['borderless', 'underlined'].includes(variant())\"\r\n ></x-button>\r\n </ng-template>\r\n @if (invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input-number{display:inline-block;width:12rem}.x-input-number{margin:0;padding:0}.x-input-number,.x-input-number-input{width:100%}.x-input-number-input input{text-align:center}.x-input-number-hidden-button .x-input-number-input input{text-align:left}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "component", type: XButtonComponent, selector: "x-button" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
284
289
|
}
|
|
285
290
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputNumberComponent, decorators: [{
|
|
286
291
|
type: Component,
|
|
287
|
-
args: [{ selector: `${XInputNumberPrefix}`, imports: [FormsModule, ReactiveFormsModule, XInputComponent, XButtonComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XInputNumberComponent)], template: "<div #inputNumber class=\"x-input-number\" [class.x-input-number-hidden-button]=\"hiddenButton()\">\r\n <div class=\"x-input-number-row\">\r\n <ng-template #beforeButtonTpl>\r\n <x-button\r\n class=\"x-input-number-reduce\"\r\n icon=\"fto-minus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || minDisabled()\"\r\n (click)=\"!minDisabled() && plus($event, step(), false); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!minDisabled() && down($event, step(), false)\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n ></x-button>\r\n </ng-template>\r\n <x-input\r\n #inputEleRef\r\n class=\"x-input-number-input\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [iconSpin]=\"iconSpin()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [ngModel]=\"displayValue()\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"hiddenButton() ? '' : beforeButtonTpl\"\r\n [after]=\"hiddenButton() ? '' : afterButtonTpl\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n (xInput)=\"onInput($event); formControlValidator()\"\r\n ></x-input>\r\n <ng-template #afterButtonTpl>\r\n <x-button\r\n class=\"x-input-number-plus\"\r\n icon=\"fto-plus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || maxDisabled()\"\r\n (click)=\"!maxDisabled() && plus($event, step()); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!maxDisabled() && down($event, step())\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n ></x-button>\r\n </ng-template>\r\n @if (invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input-number{display:inline-block;width:12rem}.x-input-number{margin:0;padding:0}.x-input-number,.x-input-number-input{width:100%}.x-input-number-input input{text-align:center}.x-input-number-hidden-button .x-input-number-input input{text-align:left}\n"] }]
|
|
292
|
+
args: [{ selector: `${XInputNumberPrefix}`, imports: [FormsModule, ReactiveFormsModule, XInputComponent, XButtonComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XInputNumberComponent)], template: "<div #inputNumber class=\"x-input-number\" [class.x-input-number-hidden-button]=\"hiddenButton()\">\r\n <div class=\"x-input-number-row\">\r\n <ng-template #beforeButtonTpl>\r\n <x-button\r\n class=\"x-input-number-reduce\"\r\n icon=\"fto-minus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || minDisabled()\"\r\n (click)=\"!minDisabled() && plus($event, step(), false); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!minDisabled() && down($event, step(), false)\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n [text]=\"['borderless', 'underlined'].includes(variant())\"\r\n ></x-button>\r\n </ng-template>\r\n <x-input\r\n #inputEleRef\r\n class=\"x-input-number-input\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [iconSpin]=\"iconSpin()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [ngModel]=\"displayValue()\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"hiddenButton() ? '' : beforeButtonTpl\"\r\n [after]=\"hiddenButton() ? '' : afterButtonTpl\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [variant]=\"variant()\"\r\n (xInput)=\"onInput($event); formControlValidator()\"\r\n ></x-input>\r\n <ng-template #afterButtonTpl>\r\n <x-button\r\n class=\"x-input-number-plus\"\r\n icon=\"fto-plus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || maxDisabled()\"\r\n (click)=\"!maxDisabled() && plus($event, step()); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!maxDisabled() && down($event, step())\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n [text]=\"['borderless', 'underlined'].includes(variant())\"\r\n ></x-button>\r\n </ng-template>\r\n @if (invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input-number{display:inline-block;width:12rem}.x-input-number{margin:0;padding:0}.x-input-number,.x-input-number-input{width:100%}.x-input-number-input input{text-align:center}.x-input-number-hidden-button .x-input-number-input input{text-align:left}\n"] }]
|
|
288
293
|
}], ctorParameters: () => [] });
|
|
289
294
|
|
|
290
295
|
class XInputNumberModule {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-input-number.mjs","sources":["../../../../lib/ng-nest/ui/input-number/input-number.property.ts","../../../../lib/ng-nest/ui/input-number/input-number.component.ts","../../../../lib/ng-nest/ui/input-number/input-number.component.html","../../../../lib/ng-nest/ui/input-number/input-number.module.ts","../../../../lib/ng-nest/ui/input-number/ng-nest-ui-input-number.ts"],"sourcesContent":["import {\r\n XAlign,\r\n XBoolean,\r\n XDirection,\r\n XJustify,\r\n XNumber,\r\n XSize,\r\n XToBoolean,\r\n XToCssPixelValue,\r\n XToNumber\r\n} from '@ng-nest/ui/core';\r\nimport { Component, TemplateRef, input } from '@angular/core';\r\nimport { XFormControlFunction, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * InputNumber\r\n * @selector x-input-number\r\n * @decorator component\r\n */\r\nexport const XInputNumberPrefix = 'x-input-number';\r\nconst X_INPUT_NUMBER_CONFIG_NAME = 'inputNumber';\r\n\r\n/**\r\n * InputNumber Property\r\n */\r\n@Component({ selector: `${XInputNumberPrefix}-property`, template: '' })\r\nexport class XInputNumberProperty extends XFormControlFunction(X_INPUT_NUMBER_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n readonly min = input<number, XNumber>(Number.MIN_SAFE_INTEGER, { transform: XToNumber });\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n readonly max = input<number, XNumber>(Number.MAX_SAFE_INTEGER, { transform: XToNumber });\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n readonly step = input<number, XNumber>(1, { transform: XToNumber });\r\n /**\r\n * @zh_CN 按住后步进速度\r\n * @en_US Stepping speed after pressing\r\n */\r\n readonly debounce = input<number, XNumber>(40, { transform: XToNumber });\r\n /**\r\n * @zh_CN 精度\r\n * @en_US Precision\r\n */\r\n readonly precision = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n readonly bordered = input<boolean, XBoolean>(this.config?.bordered ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 数字格式化\r\n * @en_US Display Formatter\r\n */\r\n readonly formatter = input<(value: number) => XNumber>();\r\n /**\r\n * @zh_CN 隐藏步进按钮\r\n * @en_US Hide step button\r\n */\r\n readonly hiddenButton = input<boolean, XBoolean>(this.config?.hiddenButton ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n override readonly size = input<XSize>(this.config?.size ?? 'medium');\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n override readonly label = input<string>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n override readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n override readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n override readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n override readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n override readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n override readonly placeholder = input<string | string[]>('');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n override readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n override readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n override readonly readonly = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n override readonly valueTpl = input<TemplateRef<any>>();\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n override readonly valueTplContext = input();\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n override readonly pattern = input<RegExp | RegExp[] | any>(null);\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n override readonly message = input<string | string[]>([]);\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n override readonly inputValidator = input<(value: any) => boolean>();\r\n}\r\n\r\n/**\r\n * InputNumber Option\r\n */\r\nexport interface XInputNumberOption extends XFormOption {\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n min?: number;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n max?: number;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n step?: number;\r\n /**\r\n * @zh_CN 按住后步进速度\r\n * @en_US Stepping speed after pressing\r\n */\r\n debounce?: number;\r\n /**\r\n * @zh_CN 精度\r\n * @en_US Precision\r\n */\r\n precision?: number;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n bordered?: boolean;\r\n /**\r\n * @zh_CN 数字格式化\r\n * @en_US Display Formatter\r\n */\r\n formatter?: (value: number) => XNumber;\r\n /**\r\n * @zh_CN 隐藏步进按钮\r\n * @en_US Hide step button\r\n */\r\n hiddenButton?: boolean;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n label?: string;\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n labelWidth?: string;\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n justify?: XJustify;\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n align?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n direction?: XDirection;\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n placeholder?: string;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n disabled?: boolean;\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n required?: boolean;\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n readonly?: boolean;\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n valueTpl?: TemplateRef<any>;\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n valueTplContext?: any;\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n pattern?: RegExp | RegExp[];\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n message?: string | string[];\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n inputValidator?: (value: any) => boolean;\r\n}\r\n","import { Subject, Subscription, debounceTime, distinctUntilChanged, fromEvent, interval, takeUntil } from 'rxjs';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n inject,\r\n viewChild,\r\n signal\r\n} from '@angular/core';\r\nimport { XIsEmpty, XNumber, XIsNotNil, XIsFunction, XIsString } from '@ng-nest/ui/core';\r\nimport { XInputNumberPrefix, XInputNumberProperty } from './input-number.property';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XInputNumberPrefix}`,\r\n imports: [FormsModule, ReactiveFormsModule, XInputComponent, XButtonComponent],\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XInputNumberComponent)]\r\n})\r\nexport class XInputNumberComponent extends XInputNumberProperty {\r\n inputNumber = viewChild.required<ElementRef<HTMLElement>>('inputNumber');\r\n inputEleRef = viewChild.required<XInputComponent>('inputEleRef');\r\n\r\n displayValue = signal<string>('');\r\n minDisabled = signal(false);\r\n maxDisabled = signal(false);\r\n mousedown$!: Subscription;\r\n mouseup$!: Subscription;\r\n timer: any;\r\n icon = signal('');\r\n iconSpin = signal(false);\r\n clearable = signal(false);\r\n isDown = signal(false);\r\n valueChange = new Subject<any>();\r\n\r\n document = inject(DOCUMENT);\r\n private unSubject = new Subject<void>();\r\n\r\n inputValue = new Subject<string>();\r\n\r\n constructor() {\r\n super();\r\n this.valueChange.pipe(distinctUntilChanged(), takeUntil(this.unSubject)).subscribe((x) => {\r\n this.onChange && this.onChange(x);\r\n });\r\n\r\n this.inputValue.pipe(debounceTime(500), takeUntil(this.unSubject)).subscribe((value) => {\r\n if (XIsFunction(this.formatter())) {\r\n value = value.replace(/[^0-9]/g, '');\r\n }\r\n if (value === '') {\r\n this.value.set(null);\r\n } else {\r\n this.verify(Number(value));\r\n this.setDisplayValue(this.value());\r\n }\r\n this.valueChange.next(this.value());\r\n });\r\n }\r\n\r\n override writeValue(value: any): void {\r\n this.value.set(value);\r\n this.verify(Number(value));\r\n this.setDisplayValue(this.value());\r\n }\r\n\r\n ngOnInit() {\r\n this.setDisplayValue(this.value());\r\n }\r\n\r\n down(event: Event, limit: XNumber, increase: boolean = true): void {\r\n if (this.disabledComputed()) return;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.isDown.set(true);\r\n this.timer = setTimeout(() => {\r\n this.mousedown$ = interval(Number(this.debounce()))\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.plus(event, limit, increase);\r\n });\r\n this.mouseup$ = fromEvent(this.document.documentElement, 'mouseup')\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe((event: Event) => {\r\n this.up(event);\r\n });\r\n }, 150);\r\n }\r\n\r\n up(event: Event) {\r\n if (this.disabledComputed()) return;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.isDown.set(false);\r\n if (this.mousedown$) this.mousedown$.unsubscribe();\r\n if (this.mouseup$) this.mouseup$.unsubscribe();\r\n }\r\n\r\n plus(event: Event, limit: XNumber, increase: boolean = true) {\r\n if (this.disabledComputed()) return;\r\n limit = Number(limit);\r\n if (!increase) limit = -limit;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (this.timer) clearTimeout(this.timer);\r\n if (Number.isNaN(+this.value())) this.value.set(0);\r\n let value = Number(this.value()) + limit;\r\n this.verify(value);\r\n this.setDisplayValue(value);\r\n this.valueChange.next(this.value());\r\n }\r\n\r\n verify(value: string | number) {\r\n if (XIsString(value) && Number(value).toString() !== value) {\r\n return;\r\n }\r\n value = Number(Number(value).toFixed(Number(this.precision())));\r\n const oldValue: number = this.value();\r\n this.value.set(value);\r\n if (Number.isNaN(+this.value())) {\r\n this.value.set(oldValue);\r\n } else {\r\n this.maxDisabled.set(value >= this.max());\r\n this.minDisabled.set(value <= this.min());\r\n this.value.set(this.maxDisabled() ? this.max() : this.minDisabled() ? this.min() : value);\r\n }\r\n }\r\n\r\n onInput(x: Event) {\r\n const input = x.target as HTMLInputElement;\r\n let value = input.value;\r\n this.inputValue.next(value);\r\n }\r\n\r\n setDisplayValue(value: string | number) {\r\n if (XIsEmpty(value)) {\r\n this.displayValue.set('');\r\n return;\r\n }\r\n let displayValue = '';\r\n const formatter = this.formatter();\r\n if (!XIsEmpty(value) && !formatter) {\r\n displayValue = Number(value).toFixed(this.precision());\r\n } else if (formatter) {\r\n const valueFormatter = formatter(Number(this.value()));\r\n const val = XIsNotNil(valueFormatter) ? valueFormatter : '';\r\n if (XIsNotNil(val)) {\r\n displayValue = val.toString();\r\n }\r\n }\r\n this.displayValue.set(displayValue);\r\n }\r\n}\r\n","<div #inputNumber class=\"x-input-number\" [class.x-input-number-hidden-button]=\"hiddenButton()\">\r\n <div class=\"x-input-number-row\">\r\n <ng-template #beforeButtonTpl>\r\n <x-button\r\n class=\"x-input-number-reduce\"\r\n icon=\"fto-minus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || minDisabled()\"\r\n (click)=\"!minDisabled() && plus($event, step(), false); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!minDisabled() && down($event, step(), false)\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n ></x-button>\r\n </ng-template>\r\n <x-input\r\n #inputEleRef\r\n class=\"x-input-number-input\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [iconSpin]=\"iconSpin()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [ngModel]=\"displayValue()\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"hiddenButton() ? '' : beforeButtonTpl\"\r\n [after]=\"hiddenButton() ? '' : afterButtonTpl\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n (xInput)=\"onInput($event); formControlValidator()\"\r\n ></x-input>\r\n <ng-template #afterButtonTpl>\r\n <x-button\r\n class=\"x-input-number-plus\"\r\n icon=\"fto-plus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || maxDisabled()\"\r\n (click)=\"!maxDisabled() && plus($event, step()); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!maxDisabled() && down($event, step())\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n ></x-button>\r\n </ng-template>\r\n @if (invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XInputNumberComponent } from './input-number.component';\r\n\r\n@NgModule({\r\n exports: [XInputNumberComponent],\r\n imports: [XInputNumberComponent]\r\n})\r\nexport class XInputNumberModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-input-number.mjs","sources":["../../../../lib/ng-nest/ui/input-number/input-number.property.ts","../../../../lib/ng-nest/ui/input-number/input-number.component.ts","../../../../lib/ng-nest/ui/input-number/input-number.component.html","../../../../lib/ng-nest/ui/input-number/input-number.module.ts","../../../../lib/ng-nest/ui/input-number/ng-nest-ui-input-number.ts"],"sourcesContent":["import {\r\n XAlign,\r\n XBoolean,\r\n XDirection,\r\n XJustify,\r\n XNumber,\r\n XSize,\r\n XToBoolean,\r\n XToCssPixelValue,\r\n XToNumber,\r\n XVariant\r\n} from '@ng-nest/ui/core';\r\nimport { Component, TemplateRef, input } from '@angular/core';\r\nimport { XFormControlFunction, XFormOption } from '@ng-nest/ui/base-form';\r\n\r\n/**\r\n * InputNumber\r\n * @selector x-input-number\r\n * @decorator component\r\n */\r\nexport const XInputNumberPrefix = 'x-input-number';\r\nconst X_INPUT_NUMBER_CONFIG_NAME = 'inputNumber';\r\n\r\n/**\r\n * InputNumber Property\r\n */\r\n@Component({ selector: `${XInputNumberPrefix}-property`, template: '' })\r\nexport class XInputNumberProperty extends XFormControlFunction(X_INPUT_NUMBER_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 形态变体\r\n * @en_US Input variant\r\n */\r\n readonly variant = input<XInputNumberVariant>(this.config?.variant ?? 'outlined');\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n readonly min = input<number, XNumber>(Number.MIN_SAFE_INTEGER, { transform: XToNumber });\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n readonly max = input<number, XNumber>(Number.MAX_SAFE_INTEGER, { transform: XToNumber });\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n readonly step = input<number, XNumber>(1, { transform: XToNumber });\r\n /**\r\n * @zh_CN 按住后步进速度\r\n * @en_US Stepping speed after pressing\r\n */\r\n readonly debounce = input<number, XNumber>(40, { transform: XToNumber });\r\n /**\r\n * @zh_CN 精度\r\n * @en_US Precision\r\n */\r\n readonly precision = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n readonly bordered = input<boolean, XBoolean>(this.config?.bordered ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 数字格式化\r\n * @en_US Display Formatter\r\n */\r\n readonly formatter = input<(value: number) => XNumber>();\r\n /**\r\n * @zh_CN 隐藏步进按钮\r\n * @en_US Hide step button\r\n */\r\n readonly hiddenButton = input<boolean, XBoolean>(this.config?.hiddenButton ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n override readonly size = input<XSize>(this.config?.size ?? 'medium');\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n override readonly label = input<string>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n override readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n override readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n override readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n override readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n override readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n override readonly placeholder = input<string | string[]>('');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n override readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n override readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n override readonly readonly = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n override readonly valueTpl = input<TemplateRef<any>>();\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n override readonly valueTplContext = input();\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n override readonly pattern = input<RegExp | RegExp[] | any>(null);\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n override readonly message = input<string | string[]>([]);\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n override readonly inputValidator = input<(value: any) => boolean>();\r\n}\r\n\r\n/**\r\n * InputNumber Option\r\n */\r\nexport interface XInputNumberOption extends XFormOption {\r\n /**\r\n * @zh_CN 形态变体\r\n * @en_US Input variant\r\n */\r\n variant?: XInputNumberVariant;\r\n /**\r\n * @zh_CN 最小值\r\n * @en_US Minimum\r\n */\r\n min?: number;\r\n /**\r\n * @zh_CN 最大值\r\n * @en_US Max\r\n */\r\n max?: number;\r\n /**\r\n * @zh_CN 步数\r\n * @en_US Step count\r\n */\r\n step?: number;\r\n /**\r\n * @zh_CN 按住后步进速度\r\n * @en_US Stepping speed after pressing\r\n */\r\n debounce?: number;\r\n /**\r\n * @zh_CN 精度\r\n * @en_US Precision\r\n */\r\n precision?: number;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n bordered?: boolean;\r\n /**\r\n * @zh_CN 数字格式化\r\n * @en_US Display Formatter\r\n */\r\n formatter?: (value: number) => XNumber;\r\n /**\r\n * @zh_CN 隐藏步进按钮\r\n * @en_US Hide step button\r\n */\r\n hiddenButton?: boolean;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n label?: string;\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n labelWidth?: string;\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n justify?: XJustify;\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n align?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n direction?: XDirection;\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n placeholder?: string;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n disabled?: boolean;\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n required?: boolean;\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n readonly?: boolean;\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n valueTpl?: TemplateRef<any>;\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n valueTplContext?: any;\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n pattern?: RegExp | RegExp[];\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n message?: string | string[];\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n inputValidator?: (value: any) => boolean;\r\n}\r\n\r\n/**\r\n * @zh_CN 输入框形态变体\r\n * @en_US Input box variant\r\n */\r\nexport type XInputNumberVariant = XVariant;\r\n","import { Subject, Subscription, debounceTime, distinctUntilChanged, fromEvent, interval, takeUntil } from 'rxjs';\r\nimport {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n inject,\r\n viewChild,\r\n signal\r\n} from '@angular/core';\r\nimport { XIsEmpty, XNumber, XIsNotNil, XIsFunction, XIsString } from '@ng-nest/ui/core';\r\nimport { XInputNumberPrefix, XInputNumberProperty } from './input-number.property';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { XButtonComponent } from '@ng-nest/ui/button';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n@Component({\r\n selector: `${XInputNumberPrefix}`,\r\n imports: [FormsModule, ReactiveFormsModule, XInputComponent, XButtonComponent],\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XInputNumberComponent)]\r\n})\r\nexport class XInputNumberComponent extends XInputNumberProperty {\r\n inputNumber = viewChild.required<ElementRef<HTMLElement>>('inputNumber');\r\n inputEleRef = viewChild.required<XInputComponent>('inputEleRef');\r\n\r\n displayValue = signal<string>('');\r\n minDisabled = signal(false);\r\n maxDisabled = signal(false);\r\n mousedown$!: Subscription;\r\n mouseup$!: Subscription;\r\n timer: any;\r\n icon = signal('');\r\n iconSpin = signal(false);\r\n clearable = signal(false);\r\n isDown = signal(false);\r\n valueChange = new Subject<any>();\r\n\r\n document = inject(DOCUMENT);\r\n private unSubject = new Subject<void>();\r\n\r\n inputValue = new Subject<string>();\r\n\r\n constructor() {\r\n super();\r\n this.valueChange.pipe(distinctUntilChanged(), takeUntil(this.unSubject)).subscribe((x) => {\r\n this.onChange && this.onChange(x);\r\n });\r\n\r\n this.inputValue.pipe(debounceTime(500), takeUntil(this.unSubject)).subscribe((value) => {\r\n if (XIsFunction(this.formatter())) {\r\n value = value.replace(/[^0-9]/g, '');\r\n }\r\n if (value === '') {\r\n this.value.set(null);\r\n } else {\r\n this.verify(Number(value));\r\n this.setDisplayValue(this.value());\r\n }\r\n this.valueChange.next(this.value());\r\n });\r\n }\r\n\r\n override writeValue(value: any): void {\r\n this.value.set(value);\r\n this.verify(Number(value));\r\n this.setDisplayValue(this.value());\r\n }\r\n\r\n ngOnInit() {\r\n this.setDisplayValue(this.value());\r\n }\r\n\r\n down(event: Event, limit: XNumber, increase: boolean = true): void {\r\n if (this.disabledComputed()) return;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.isDown.set(true);\r\n this.timer = setTimeout(() => {\r\n this.mousedown$ = interval(Number(this.debounce()))\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.plus(event, limit, increase);\r\n });\r\n this.mouseup$ = fromEvent(this.document.documentElement, 'mouseup')\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe((event: Event) => {\r\n this.up(event);\r\n });\r\n }, 150);\r\n }\r\n\r\n up(event: Event) {\r\n if (this.disabledComputed()) return;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n this.isDown.set(false);\r\n if (this.mousedown$) this.mousedown$.unsubscribe();\r\n if (this.mouseup$) this.mouseup$.unsubscribe();\r\n }\r\n\r\n plus(event: Event, limit: XNumber, increase: boolean = true) {\r\n if (this.disabledComputed()) return;\r\n limit = Number(limit);\r\n if (!increase) limit = -limit;\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (this.timer) clearTimeout(this.timer);\r\n if (Number.isNaN(+this.value())) this.value.set(0);\r\n let value = Number(this.value()) + limit;\r\n this.verify(value);\r\n this.setDisplayValue(value);\r\n this.valueChange.next(this.value());\r\n }\r\n\r\n verify(value: string | number) {\r\n if (XIsString(value) && Number(value).toString() !== value) {\r\n return;\r\n }\r\n value = Number(Number(value).toFixed(Number(this.precision())));\r\n const oldValue: number = this.value();\r\n this.value.set(value);\r\n if (Number.isNaN(+this.value())) {\r\n this.value.set(oldValue);\r\n } else {\r\n this.maxDisabled.set(value >= this.max());\r\n this.minDisabled.set(value <= this.min());\r\n this.value.set(this.maxDisabled() ? this.max() : this.minDisabled() ? this.min() : value);\r\n }\r\n }\r\n\r\n onInput(x: Event) {\r\n const input = x.target as HTMLInputElement;\r\n let value = input.value;\r\n this.inputValue.next(value);\r\n }\r\n\r\n setDisplayValue(value: string | number) {\r\n if (XIsEmpty(value)) {\r\n this.displayValue.set('');\r\n return;\r\n }\r\n let displayValue = '';\r\n const formatter = this.formatter();\r\n if (!XIsEmpty(value) && !formatter) {\r\n displayValue = Number(value).toFixed(this.precision());\r\n } else if (formatter) {\r\n const valueFormatter = formatter(Number(this.value()));\r\n const val = XIsNotNil(valueFormatter) ? valueFormatter : '';\r\n if (XIsNotNil(val)) {\r\n displayValue = val.toString();\r\n }\r\n }\r\n this.displayValue.set(displayValue);\r\n }\r\n}\r\n","<div #inputNumber class=\"x-input-number\" [class.x-input-number-hidden-button]=\"hiddenButton()\">\r\n <div class=\"x-input-number-row\">\r\n <ng-template #beforeButtonTpl>\r\n <x-button\r\n class=\"x-input-number-reduce\"\r\n icon=\"fto-minus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || minDisabled()\"\r\n (click)=\"!minDisabled() && plus($event, step(), false); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!minDisabled() && down($event, step(), false)\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n [text]=\"['borderless', 'underlined'].includes(variant())\"\r\n ></x-button>\r\n </ng-template>\r\n <x-input\r\n #inputEleRef\r\n class=\"x-input-number-input\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [iconSpin]=\"iconSpin()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [ngModel]=\"displayValue()\"\r\n [valueTpl]=\"valueTpl()\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"hiddenButton() ? '' : beforeButtonTpl\"\r\n [after]=\"hiddenButton() ? '' : afterButtonTpl\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [variant]=\"variant()\"\r\n (xInput)=\"onInput($event); formControlValidator()\"\r\n ></x-input>\r\n <ng-template #afterButtonTpl>\r\n <x-button\r\n class=\"x-input-number-plus\"\r\n icon=\"fto-plus\"\r\n [size]=\"size()\"\r\n [onlyIcon]=\"!bordered()\"\r\n [disabled]=\"disabledComputed() || maxDisabled()\"\r\n (click)=\"!maxDisabled() && plus($event, step()); formControlValidator()\"\r\n attrType=\"button\"\r\n (mousedown)=\"!maxDisabled() && down($event, step())\"\r\n (mouseup)=\"up($event)\"\r\n plain\r\n flat\r\n [text]=\"['borderless', 'underlined'].includes(variant())\"\r\n ></x-button>\r\n </ng-template>\r\n @if (invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XInputNumberComponent } from './input-number.component';\r\n\r\n@NgModule({\r\n exports: [XInputNumberComponent],\r\n imports: [XInputNumberComponent]\r\n})\r\nexport class XInputNumberModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,11 @@ class XInputProperty extends XFormControlFunction(X_INPUT_CONFIG_NAME) {
|
|
|
27
27
|
* @en_US Input type
|
|
28
28
|
*/
|
|
29
29
|
this.type = input('text');
|
|
30
|
+
/**
|
|
31
|
+
* @zh_CN 形态变体
|
|
32
|
+
* @en_US Input variant
|
|
33
|
+
*/
|
|
34
|
+
this.variant = input(this.config?.variant ?? 'outlined');
|
|
30
35
|
/**
|
|
31
36
|
* @zh_CN 清除按钮
|
|
32
37
|
* @en_US Clear button
|
|
@@ -243,7 +248,7 @@ class XInputProperty extends XFormControlFunction(X_INPUT_CONFIG_NAME) {
|
|
|
243
248
|
this.xComposition = output();
|
|
244
249
|
}
|
|
245
250
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
246
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XInputProperty, isStandalone: true, selector: "x-input-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconLayout: { classPropertyName: "iconLayout", publicName: "iconLayout", isSignal: true, isRequired: false, transformFunction: null }, iconSpin: { classPropertyName: "iconSpin", publicName: "iconSpin", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: true, isRequired: false, transformFunction: null }, inputPadding: { classPropertyName: "inputPadding", publicName: "inputPadding", isSignal: true, isRequired: false, transformFunction: null }, inputIconPadding: { classPropertyName: "inputIconPadding", publicName: "inputIconPadding", isSignal: true, isRequired: false, transformFunction: null }, validator: { classPropertyName: "validator", publicName: "validator", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", 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 }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", clearEmit: "clearEmit", xFocus: "xFocus", xBlur: "xBlur", xInput: "xInput", xKeydown: "xKeydown", xClick: "xClick", xMouseenter: "xMouseenter", xMouseleave: "xMouseleave", xComposition: "xComposition" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
251
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.0", type: XInputProperty, isStandalone: true, selector: "x-input-property", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, clearable: { classPropertyName: "clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconLayout: { classPropertyName: "iconLayout", publicName: "iconLayout", isSignal: true, isRequired: false, transformFunction: null }, iconSpin: { classPropertyName: "iconSpin", publicName: "iconSpin", isSignal: true, isRequired: false, transformFunction: null }, maxlength: { classPropertyName: "maxlength", publicName: "maxlength", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, inputStyle: { classPropertyName: "inputStyle", publicName: "inputStyle", isSignal: true, isRequired: false, transformFunction: null }, inputPadding: { classPropertyName: "inputPadding", publicName: "inputPadding", isSignal: true, isRequired: false, transformFunction: null }, inputIconPadding: { classPropertyName: "inputIconPadding", publicName: "inputIconPadding", isSignal: true, isRequired: false, transformFunction: null }, validator: { classPropertyName: "validator", publicName: "validator", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", 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 }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", clearEmit: "clearEmit", xFocus: "xFocus", xBlur: "xBlur", xInput: "xInput", xKeydown: "xKeydown", xClick: "xClick", xMouseenter: "xMouseenter", xMouseleave: "xMouseleave", xComposition: "xComposition" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
247
252
|
}
|
|
248
253
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputProperty, decorators: [{
|
|
249
254
|
type: Component,
|
|
@@ -501,11 +506,11 @@ class XInputComponent extends XInputProperty {
|
|
|
501
506
|
}
|
|
502
507
|
formControlChanges() { }
|
|
503
508
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
504
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XInputComponent, isStandalone: true, selector: "x-input", host: { properties: { "style.width": "this.getWidth" } }, providers: [XValueAccessor(XInputComponent)], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputValueRef", first: true, predicate: ["inputValueRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "maxLengthRef", first: true, predicate: ["maxLengthRef"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #inputElement\r\n class=\"x-input\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-clearable]=\"clearable()\"\r\n [class.x-clear-show]=\"clearShow()\"\r\n [class.x-input-icon]=\"getIcon()\"\r\n [class.x-input-active]=\"active()\"\r\n [class.x-input-focus]=\"focused()\"\r\n [class.x-input-pointer]=\"pointer()\"\r\n [class.x-input-bordered]=\"bordered()\"\r\n [class.x-input-icon-left]=\"getIconLayoutLeft()\"\r\n [class.x-input-icon-right]=\"getIconLayoutRight()\"\r\n [class.x-input-after]=\"after()\"\r\n [class.x-input-before]=\"before()\"\r\n [class.x-input-after-template]=\"afterIsTemplate()\"\r\n [class.x-input-before-template]=\"beforeIsTemplate()\"\r\n [class.x-input-value-template]=\"valueTpl()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-input-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-input-row\">\r\n @if (before()) {\r\n <div class=\"x-input-row-before\" [class.x-input-row-before-template]=\"beforeIsTemplate()\">\r\n <ng-container *xOutlet=\"before()\">{{ before() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-input-input\" (mouseenter)=\"xMouseenter.emit($event)\" (mouseleave)=\"xMouseleave.emit($event)\">\r\n @if (valueTpl()) {\r\n <div\r\n #inputValueRef\r\n class=\"x-input-value-template-value\"\r\n [style.left]=\"paddingLeft()\"\r\n [style.padding-left]=\"0\"\r\n [style.padding-right]=\"0\"\r\n [style.width]=\"getTemplateWidth()\"\r\n (click)=\"xClick.emit($event)\"\r\n >\r\n <ng-container\r\n *xOutlet=\"valueTpl()!; context: valueTplContext() ? valueTplContext() : { $value: value() }\"\r\n ></ng-container>\r\n </div>\r\n }\r\n <input\r\n #inputRef\r\n autocomplete=\"off\"\r\n class=\"x-input-frame\"\r\n [class.x-input-has-value-template]=\"!!valueTpl()\"\r\n [ngStyle]=\"inputStyle()\"\r\n [type]=\"type()\"\r\n [placeholder]=\"placeholder()\"\r\n [required]=\"requiredComputed()\"\r\n [disabled]=\"disabledComputed()\"\r\n [readonly]=\"readonly()\"\r\n [maxlength]=\"maxlength()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"valueChange.next($event)\"\r\n [style.padding-left]=\"paddingLeft()\"\r\n [style.padding-right]=\"paddingRight()\"\r\n (focus)=\"xFocus.emit($event)\"\r\n (blur)=\"xBlur.emit($event)\"\r\n (keydown)=\"formControlValidator(); xKeydown.emit($event)\"\r\n (click)=\"xClick.emit($event)\"\r\n (compositionstart)=\"xComposition.emit($event)\"\r\n (compositionend)=\"xComposition.emit($event)\"\r\n />\r\n @if (clearShow() && !iconSpin()) {\r\n <x-icon class=\"x-input-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n }\r\n @if (icon() && ((!clearShow() && getIconLayoutRight()) || getIconLayoutLeft() || iconSpin())) {\r\n <x-icon [type]=\"icon()\" [spin]=\"iconSpin()\" (click)=\"xClick.emit($event)\"></x-icon>\r\n }\r\n @if (maxlength() && lengthTotal()) {\r\n <span class=\"x-input-max-length\" [style.width]=\"getMaxLengthWidth()\">{{ lengthTotal() }}</span>\r\n }\r\n @if (invalid()) {\r\n <span class=\"x-input-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n @if (after()) {\r\n <div class=\"x-input-row-after\" [class.x-input-row-after-template]=\"afterIsTemplate()\">\r\n <ng-container *xOutlet=\"after()\">{{ after() }}</ng-container>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input{display:inline-block;width:12rem}.x-input{width:100%}.x-input.x-flex{display:flex}.x-input.x-justify-start{justify-content:flex-start}.x-input.x-justify-center{justify-content:center}.x-input.x-justify-end{justify-content:flex-end}.x-input.x-justify-space-between{justify-content:space-between}.x-input.x-justify-space-around{justify-content:space-around}.x-input.x-align-start{align-items:flex-start}.x-input.x-align-center{align-items:center}.x-input.x-align-end{align-items:flex-end}.x-input.x-direction-column{flex-direction:column}.x-input.x-direction-column-reverse{flex-direction:column-reverse}.x-input.x-direction-row{flex-direction:row}.x-input.x-direction-row-reverse{flex-direction:row-reverse}.x-input>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-input>label.x-text-align-start{text-align:start}.x-input>label.x-text-align-center{text-align:center}.x-input>label.x-text-align-end{text-align:end}.x-input-row{flex:1;display:flex;align-items:center}.x-input-row .x-input-row-before:not(.x-input-row-before-template),.x-input-row .x-input-row-after:not(.x-input-row-after-template){border:var(--x-border-width) var(--x-border-style) var(--x-border);background-color:var(--x-background-a100);border-width:0}.x-input-row .x-input-row-before:not(.x-input-row-before-template){border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-input-row .x-input-row-after:not(.x-input-row-before-template){border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-input-row .x-input-row-before-template{display:contents}.x-input-row .x-input-row-before-template input,.x-input-row .x-input-row-before-template .x-button{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.x-input-row .x-input-row-before-template input{margin-right:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-after-template{display:contents}.x-input-row .x-input-row-after-template input,.x-input-row .x-input-row-after-template .x-button{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.x-input-row .x-input-row-after-template input{margin-left:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-before-template:hover,.x-input-row .x-input-row-before-template:focus{z-index:1}.x-input-row .x-input-row-before-template input:hover,.x-input-row .x-input-row-before-template input:focus,.x-input-row .x-input-row-after-template input:hover,.x-input-row .x-input-row-after-template input:focus{z-index:1}.x-input-row>.x-input-input{position:relative;width:100%;display:inline-flex;align-items:center}.x-input-row>.x-input-input>input{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background-a200);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);border-width:0;box-shadow:var(--x-box-shadow) transparent;transition-property:background-color,border-color;transition-duration:var(--x-animation-duration-slow)}.x-input-row>.x-input-input>input::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-input-row>.x-input-input>input:-ms-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input::-webkit-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input[disabled]{color:var(--x-text-500)}.x-input-row>.x-input-input>input:focus{border-color:var(--x-primary);outline:0}.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base);z-index:2}.x-input-row>.x-input-input:hover>input{border-color:var(--x-primary-300)}.x-input-row>.x-input-input:focus>input{border-color:var(--x-primary);outline:0}.x-input-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-input-value-template .x-input-input>input.x-input-has-value-template{color:transparent!important}.x-input-value-template-value{position:absolute;display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%}.x-input-value-template-value:hover+input{border-color:var(--x-primary-300)}.x-input-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-input.x-invalid>label,.x-input.x-required>label{color:var(--x-danger)}.x-input.x-invalid .x-input-input>x-icon,.x-input.x-required .x-input-input>x-icon{color:var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error,.x-input.x-required .x-input-input .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-input.x-invalid .x-input-input .x-border-error.x-top-left,.x-input.x-required .x-input-input .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-top-right,.x-input.x-required .x-input-input .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-left,.x-input.x-required .x-input-input .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-right,.x-input.x-required .x-input-input .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-disabled>.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);cursor:not-allowed}.x-input.x-disabled>.x-input-row>.x-input-input>input{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a100)}.x-input.x-disabled>.x-input-row>.x-input-input>.x-input-value-template-value{color:var(--x-text-400);cursor:not-allowed}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);right:0;left:inherit;opacity:0;cursor:pointer;z-index:2;display:inline-flex;align-items:center;justify-content:center}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear:hover{color:var(--x-text-300)}.x-input.x-clearable>.x-input-row>.x-input-input:hover>input .x-input-clear,.x-input.x-clearable>.x-input-row>.x-input-input:hover>.x-input-value-template-value .x-input-clear{opacity:1}.x-input.x-clearable.x-clear-show>.x-input-row>.x-input-input>.x-input-clear{opacity:1}.x-input-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:0;width:3rem;display:inline-flex;text-align:center;justify-content:center}.x-input.x-direction-row>label{padding:0 .5rem 0 0}.x-input.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-input.x-direction-column,.x-input.x-direction-column-reverse{align-items:inherit}.x-input-icon>.x-input-row>.x-input-input>x-icon{position:absolute;font-size:var(--x-font-size-medium);display:inline-flex;align-items:center;justify-content:center}.x-input-icon-left>.x-input-row>.x-input-input>input,.x-input-icon-left>.x-input-row>.x-input-input>.x-input-value-template-value{padding-left:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-left>.x-input-row>.x-input-input>x-icon{left:0}.x-input-icon-right>.x-input-row>.x-input-input>input,.x-input-icon-right>.x-input-row>.x-input-input>.x-input-value-template-value{padding-right:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-right>.x-input-row>.x-input-input>x-icon{right:0}.x-input-icon-right>.x-input-row>.x-input-input>.x-input-max-length{right:inherit;left:0}.x-input-bordered>.x-input-row>.x-input-input>input{border-width:var(--x-border-width);background-color:var(--x-background)}.x-input-bordered .x-input-row .x-input-row-before:not(.x-input-row-before-template){border-width:var(--x-border-width);border-right-width:0}.x-input-bordered .x-input-row .x-input-row-after:not(.x-input-row-after-template){border-width:var(--x-border-width);border-left-width:0}.x-input-before>.x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-input-before-template .x-input-input>input:hover,.x-input-before-template .x-input-input>input:focus{z-index:1}.x-input-after>.x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-input-after-template>.x-input-row>.x-input-input>input:hover,.x-input-after-template>.x-input-row>.x-input-input>input:focus{z-index:1}.x-input-active .x-input-row>.x-input-input>input{border-color:var(--x-primary)}.x-input-pointer .x-input-row>.x-input-input>input,.x-input-pointer .x-input-row>.x-input-input>x-icon,.x-input-pointer .x-input-row>.x-input-input>.x-input-value-template-value{cursor:pointer}.x-input-big>.x-input-row>.x-input-input>input,.x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-input>x-icon{height:var(--x-height-big);width:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-large>.x-input-row>.x-input-input>input,.x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-input>x-icon{height:var(--x-height-large);width:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-medium>.x-input-row>.x-input-input>input,.x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-input>x-icon{height:var(--x-height-medium);width:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-small>.x-input-row>.x-input-input>input,.x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-input>x-icon{height:var(--x-height-small);width:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-mini>.x-input-row>.x-input-input>input,.x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-input>x-icon{height:var(--x-height-mini);width:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input{margin:0;padding:0}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
509
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.0", type: XInputComponent, isStandalone: true, selector: "x-input", host: { properties: { "style.width": "this.getWidth" } }, providers: [XValueAccessor(XInputComponent)], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputRef", first: true, predicate: ["inputRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputValueRef", first: true, predicate: ["inputValueRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "maxLengthRef", first: true, predicate: ["maxLengthRef"], descendants: true, read: ElementRef, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\r\n #inputElement\r\n class=\"x-input\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-clearable]=\"clearable()\"\r\n [class.x-clear-show]=\"clearShow()\"\r\n [class.x-input-icon]=\"getIcon()\"\r\n [class.x-input-active]=\"active()\"\r\n [class.x-input-focus]=\"focused()\"\r\n [class.x-input-pointer]=\"pointer()\"\r\n [class.x-input-bordered]=\"bordered()\"\r\n [class.x-input-filled]=\"variant() === 'filled'\"\r\n [class.x-input-borderless]=\"variant() === 'borderless' || (variant() === 'outlined' && !bordered())\"\r\n [class.x-input-underlined]=\"variant() === 'underlined'\"\r\n [class.x-input-icon-left]=\"getIconLayoutLeft()\"\r\n [class.x-input-icon-right]=\"getIconLayoutRight()\"\r\n [class.x-input-after]=\"after()\"\r\n [class.x-input-before]=\"before()\"\r\n [class.x-input-after-template]=\"afterIsTemplate()\"\r\n [class.x-input-before-template]=\"beforeIsTemplate()\"\r\n [class.x-input-value-template]=\"valueTpl()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-input-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-input-row\">\r\n @if (before()) {\r\n <div class=\"x-input-row-before\" [class.x-input-row-before-template]=\"beforeIsTemplate()\">\r\n <ng-container *xOutlet=\"before()\">{{ before() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-input-input\" (mouseenter)=\"xMouseenter.emit($event)\" (mouseleave)=\"xMouseleave.emit($event)\">\r\n @if (valueTpl()) {\r\n <div\r\n #inputValueRef\r\n class=\"x-input-value-template-value\"\r\n [style.left]=\"paddingLeft()\"\r\n [style.padding-left]=\"0\"\r\n [style.padding-right]=\"0\"\r\n [style.width]=\"getTemplateWidth()\"\r\n (click)=\"xClick.emit($event)\"\r\n >\r\n <ng-container\r\n *xOutlet=\"valueTpl()!; context: valueTplContext() ? valueTplContext() : { $value: value() }\"\r\n ></ng-container>\r\n </div>\r\n }\r\n <input\r\n #inputRef\r\n autocomplete=\"off\"\r\n class=\"x-input-frame\"\r\n [class.x-input-has-value-template]=\"!!valueTpl()\"\r\n [ngStyle]=\"inputStyle()\"\r\n [type]=\"type()\"\r\n [placeholder]=\"placeholder()\"\r\n [required]=\"requiredComputed()\"\r\n [disabled]=\"disabledComputed()\"\r\n [readonly]=\"readonly()\"\r\n [maxlength]=\"maxlength()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"valueChange.next($event)\"\r\n [style.padding-left]=\"paddingLeft()\"\r\n [style.padding-right]=\"paddingRight()\"\r\n (focus)=\"xFocus.emit($event)\"\r\n (blur)=\"xBlur.emit($event)\"\r\n (keydown)=\"formControlValidator(); xKeydown.emit($event)\"\r\n (click)=\"xClick.emit($event)\"\r\n (compositionstart)=\"xComposition.emit($event)\"\r\n (compositionend)=\"xComposition.emit($event)\"\r\n />\r\n @if (clearShow() && !iconSpin()) {\r\n <x-icon class=\"x-input-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n }\r\n @if (icon() && ((!clearShow() && getIconLayoutRight()) || getIconLayoutLeft() || iconSpin())) {\r\n <x-icon [type]=\"icon()\" [spin]=\"iconSpin()\" (click)=\"xClick.emit($event)\"></x-icon>\r\n }\r\n @if (maxlength() && lengthTotal()) {\r\n <span class=\"x-input-max-length\" [style.width]=\"getMaxLengthWidth()\">{{ lengthTotal() }}</span>\r\n }\r\n @if (invalid()) {\r\n <span class=\"x-input-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n @if (after()) {\r\n <div class=\"x-input-row-after\" [class.x-input-row-after-template]=\"afterIsTemplate()\">\r\n <ng-container *xOutlet=\"after()\">{{ after() }}</ng-container>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input{display:inline-block;width:12rem}.x-input{width:100%}.x-input.x-flex{display:flex}.x-input.x-justify-start{justify-content:flex-start}.x-input.x-justify-center{justify-content:center}.x-input.x-justify-end{justify-content:flex-end}.x-input.x-justify-space-between{justify-content:space-between}.x-input.x-justify-space-around{justify-content:space-around}.x-input.x-align-start{align-items:flex-start}.x-input.x-align-center{align-items:center}.x-input.x-align-end{align-items:flex-end}.x-input.x-direction-column{flex-direction:column}.x-input.x-direction-column-reverse{flex-direction:column-reverse}.x-input.x-direction-row{flex-direction:row}.x-input.x-direction-row-reverse{flex-direction:row-reverse}.x-input>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-input>label.x-text-align-start{text-align:start}.x-input>label.x-text-align-center{text-align:center}.x-input>label.x-text-align-end{text-align:end}.x-input-row{flex:1;display:flex;align-items:center}.x-input-row .x-input-row-before:not(.x-input-row-before-template),.x-input-row .x-input-row-after:not(.x-input-row-after-template){border:var(--x-border-width) var(--x-border-style) var(--x-border);background-color:var(--x-background-a100);border-width:0}.x-input-row .x-input-row-before:not(.x-input-row-before-template){border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-input-row .x-input-row-after:not(.x-input-row-before-template){border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-input-row .x-input-row-before-template{display:contents}.x-input-row .x-input-row-before-template input,.x-input-row .x-input-row-before-template .x-button{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.x-input-row .x-input-row-before-template input{margin-right:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-after-template{display:contents}.x-input-row .x-input-row-after-template input,.x-input-row .x-input-row-after-template .x-button{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.x-input-row .x-input-row-after-template input{margin-left:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-before-template:hover,.x-input-row .x-input-row-before-template:focus{z-index:1}.x-input-row .x-input-row-before-template input:hover,.x-input-row .x-input-row-before-template input:focus,.x-input-row .x-input-row-after-template input:hover,.x-input-row .x-input-row-after-template input:focus{z-index:1}.x-input-row>.x-input-input{position:relative;width:100%;display:inline-flex;align-items:center}.x-input-row>.x-input-input>input{flex:1;width:100%;font-size:var(--x-font-size);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);border-width:0;box-shadow:var(--x-box-shadow) transparent;transition-property:background-color,border-color,border-width,border-radius;transition-duration:var(--x-animation-duration-slow)}.x-input-row>.x-input-input>input::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-input-row>.x-input-input>input:-ms-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input::-webkit-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input[disabled]{color:var(--x-text-500)}.x-input-row>.x-input-input>input:focus{border-color:var(--x-primary);outline:0}.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base);z-index:2}.x-input-row>.x-input-input:hover>input{border-color:var(--x-primary-300)}.x-input-row>.x-input-input:focus>input{border-color:var(--x-primary);outline:0}.x-input-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-input-value-template .x-input-input>input.x-input-has-value-template{color:transparent!important}.x-input-value-template-value{position:absolute;display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%}.x-input-value-template-value:hover+input{border-color:var(--x-primary-300)}.x-input-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-input.x-invalid>label,.x-input.x-required>label{color:var(--x-danger)}.x-input.x-invalid .x-input-input>x-icon,.x-input.x-required .x-input-input>x-icon{color:var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error,.x-input.x-required .x-input-input .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-input.x-invalid .x-input-input .x-border-error.x-top-left,.x-input.x-required .x-input-input .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-top-right,.x-input.x-required .x-input-input .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-left,.x-input.x-required .x-input-input .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-right,.x-input.x-required .x-input-input .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-disabled>.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);cursor:not-allowed}.x-input.x-disabled>.x-input-row>.x-input-input>input{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a300)}.x-input.x-disabled>.x-input-row>.x-input-input>.x-input-value-template-value{color:var(--x-text-400);cursor:not-allowed}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);right:0;left:inherit;opacity:0;cursor:pointer;z-index:2;display:inline-flex;align-items:center;justify-content:center}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear:hover{color:var(--x-text-300)}.x-input.x-clearable>.x-input-row>.x-input-input:hover>input .x-input-clear,.x-input.x-clearable>.x-input-row>.x-input-input:hover>.x-input-value-template-value .x-input-clear{opacity:1}.x-input.x-clearable.x-clear-show>.x-input-row>.x-input-input>.x-input-clear{opacity:1}.x-input-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:0;width:3rem;display:inline-flex;text-align:center;justify-content:center}.x-input.x-direction-row>label{padding:0 .5rem 0 0}.x-input.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-input.x-direction-column,.x-input.x-direction-column-reverse{align-items:inherit}.x-input-icon>.x-input-row>.x-input-input>x-icon{position:absolute;font-size:var(--x-font-size-medium);display:inline-flex;align-items:center;justify-content:center}.x-input-icon-left>.x-input-row>.x-input-input>input,.x-input-icon-left>.x-input-row>.x-input-input>.x-input-value-template-value{padding-left:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-left>.x-input-row>.x-input-input>x-icon{left:0}.x-input-icon-right>.x-input-row>.x-input-input>input,.x-input-icon-right>.x-input-row>.x-input-input>.x-input-value-template-value{padding-right:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-right>.x-input-row>.x-input-input>x-icon{right:0}.x-input-icon-right>.x-input-row>.x-input-input>.x-input-max-length{right:inherit;left:0}.x-input-bordered>.x-input-row>.x-input-input>input{border-width:var(--x-border-width);background-color:var(--x-background)}.x-input-bordered .x-input-row .x-input-row-before:not(.x-input-row-before-template){border-width:var(--x-border-width);border-right-width:0}.x-input-bordered .x-input-row .x-input-row-after:not(.x-input-row-after-template){border-width:var(--x-border-width);border-left-width:0}.x-input-filled>.x-input-row>.x-input-input>input{border-color:transparent;background-color:var(--x-background-a200)}.x-input-filled>.x-input-row>.x-input-input>input:hover{background-color:var(--x-background-a300)}.x-input-filled>.x-input-row>.x-input-input>input:focus{border-color:var(--x-primary);background-color:var(--x-background)}.x-input-borderless>.x-input-row>.x-input-input>input{border:none}.x-input-underlined>.x-input-row>.x-input-input>input{background-color:transparent;border-width:0 0 var(--x-border-width);border-radius:0}.x-input-before>.x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-input-before-template .x-input-input>input:hover,.x-input-before-template .x-input-input>input:focus{z-index:1}.x-input-after>.x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-input-after-template>.x-input-row>.x-input-input>input:hover,.x-input-after-template>.x-input-row>.x-input-input>input:focus{z-index:1}.x-input-active .x-input-row>.x-input-input>input{border-color:var(--x-primary)}.x-input-pointer .x-input-row>.x-input-input>input,.x-input-pointer .x-input-row>.x-input-input>x-icon,.x-input-pointer .x-input-row>.x-input-input>.x-input-value-template-value{cursor:pointer}.x-input-big>.x-input-row>.x-input-input>input,.x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-input>x-icon{height:var(--x-height-big);width:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-large>.x-input-row>.x-input-input>input,.x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-input>x-icon{height:var(--x-height-large);width:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-medium>.x-input-row>.x-input-input>input,.x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-input>x-icon{height:var(--x-height-medium);width:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-small>.x-input-row>.x-input-input>input,.x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-input>x-icon{height:var(--x-height-small);width:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-mini>.x-input-row>.x-input-input>input,.x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-input>x-icon{height:var(--x-height-mini);width:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input{margin:0;padding:0}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XIconComponent, selector: "x-icon" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
505
510
|
}
|
|
506
511
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: XInputComponent, decorators: [{
|
|
507
512
|
type: Component,
|
|
508
|
-
args: [{ selector: `${XInputPrefix}`, imports: [NgClass, NgStyle, FormsModule, ReactiveFormsModule, XIconComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XInputComponent)], template: "<div\r\n #inputElement\r\n class=\"x-input\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-clearable]=\"clearable()\"\r\n [class.x-clear-show]=\"clearShow()\"\r\n [class.x-input-icon]=\"getIcon()\"\r\n [class.x-input-active]=\"active()\"\r\n [class.x-input-focus]=\"focused()\"\r\n [class.x-input-pointer]=\"pointer()\"\r\n [class.x-input-bordered]=\"bordered()\"\r\n [class.x-input-icon-left]=\"getIconLayoutLeft()\"\r\n [class.x-input-icon-right]=\"getIconLayoutRight()\"\r\n [class.x-input-after]=\"after()\"\r\n [class.x-input-before]=\"before()\"\r\n [class.x-input-after-template]=\"afterIsTemplate()\"\r\n [class.x-input-before-template]=\"beforeIsTemplate()\"\r\n [class.x-input-value-template]=\"valueTpl()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-input-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-input-row\">\r\n @if (before()) {\r\n <div class=\"x-input-row-before\" [class.x-input-row-before-template]=\"beforeIsTemplate()\">\r\n <ng-container *xOutlet=\"before()\">{{ before() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-input-input\" (mouseenter)=\"xMouseenter.emit($event)\" (mouseleave)=\"xMouseleave.emit($event)\">\r\n @if (valueTpl()) {\r\n <div\r\n #inputValueRef\r\n class=\"x-input-value-template-value\"\r\n [style.left]=\"paddingLeft()\"\r\n [style.padding-left]=\"0\"\r\n [style.padding-right]=\"0\"\r\n [style.width]=\"getTemplateWidth()\"\r\n (click)=\"xClick.emit($event)\"\r\n >\r\n <ng-container\r\n *xOutlet=\"valueTpl()!; context: valueTplContext() ? valueTplContext() : { $value: value() }\"\r\n ></ng-container>\r\n </div>\r\n }\r\n <input\r\n #inputRef\r\n autocomplete=\"off\"\r\n class=\"x-input-frame\"\r\n [class.x-input-has-value-template]=\"!!valueTpl()\"\r\n [ngStyle]=\"inputStyle()\"\r\n [type]=\"type()\"\r\n [placeholder]=\"placeholder()\"\r\n [required]=\"requiredComputed()\"\r\n [disabled]=\"disabledComputed()\"\r\n [readonly]=\"readonly()\"\r\n [maxlength]=\"maxlength()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"valueChange.next($event)\"\r\n [style.padding-left]=\"paddingLeft()\"\r\n [style.padding-right]=\"paddingRight()\"\r\n (focus)=\"xFocus.emit($event)\"\r\n (blur)=\"xBlur.emit($event)\"\r\n (keydown)=\"formControlValidator(); xKeydown.emit($event)\"\r\n (click)=\"xClick.emit($event)\"\r\n (compositionstart)=\"xComposition.emit($event)\"\r\n (compositionend)=\"xComposition.emit($event)\"\r\n />\r\n @if (clearShow() && !iconSpin()) {\r\n <x-icon class=\"x-input-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n }\r\n @if (icon() && ((!clearShow() && getIconLayoutRight()) || getIconLayoutLeft() || iconSpin())) {\r\n <x-icon [type]=\"icon()\" [spin]=\"iconSpin()\" (click)=\"xClick.emit($event)\"></x-icon>\r\n }\r\n @if (maxlength() && lengthTotal()) {\r\n <span class=\"x-input-max-length\" [style.width]=\"getMaxLengthWidth()\">{{ lengthTotal() }}</span>\r\n }\r\n @if (invalid()) {\r\n <span class=\"x-input-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n @if (after()) {\r\n <div class=\"x-input-row-after\" [class.x-input-row-after-template]=\"afterIsTemplate()\">\r\n <ng-container *xOutlet=\"after()\">{{ after() }}</ng-container>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input{display:inline-block;width:12rem}.x-input{width:100%}.x-input.x-flex{display:flex}.x-input.x-justify-start{justify-content:flex-start}.x-input.x-justify-center{justify-content:center}.x-input.x-justify-end{justify-content:flex-end}.x-input.x-justify-space-between{justify-content:space-between}.x-input.x-justify-space-around{justify-content:space-around}.x-input.x-align-start{align-items:flex-start}.x-input.x-align-center{align-items:center}.x-input.x-align-end{align-items:flex-end}.x-input.x-direction-column{flex-direction:column}.x-input.x-direction-column-reverse{flex-direction:column-reverse}.x-input.x-direction-row{flex-direction:row}.x-input.x-direction-row-reverse{flex-direction:row-reverse}.x-input>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-input>label.x-text-align-start{text-align:start}.x-input>label.x-text-align-center{text-align:center}.x-input>label.x-text-align-end{text-align:end}.x-input-row{flex:1;display:flex;align-items:center}.x-input-row .x-input-row-before:not(.x-input-row-before-template),.x-input-row .x-input-row-after:not(.x-input-row-after-template){border:var(--x-border-width) var(--x-border-style) var(--x-border);background-color:var(--x-background-a100);border-width:0}.x-input-row .x-input-row-before:not(.x-input-row-before-template){border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-input-row .x-input-row-after:not(.x-input-row-before-template){border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-input-row .x-input-row-before-template{display:contents}.x-input-row .x-input-row-before-template input,.x-input-row .x-input-row-before-template .x-button{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.x-input-row .x-input-row-before-template input{margin-right:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-after-template{display:contents}.x-input-row .x-input-row-after-template input,.x-input-row .x-input-row-after-template .x-button{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.x-input-row .x-input-row-after-template input{margin-left:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-before-template:hover,.x-input-row .x-input-row-before-template:focus{z-index:1}.x-input-row .x-input-row-before-template input:hover,.x-input-row .x-input-row-before-template input:focus,.x-input-row .x-input-row-after-template input:hover,.x-input-row .x-input-row-after-template input:focus{z-index:1}.x-input-row>.x-input-input{position:relative;width:100%;display:inline-flex;align-items:center}.x-input-row>.x-input-input>input{flex:1;width:100%;font-size:var(--x-font-size);background-color:var(--x-background-a200);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);border-width:0;box-shadow:var(--x-box-shadow) transparent;transition-property:background-color,border-color;transition-duration:var(--x-animation-duration-slow)}.x-input-row>.x-input-input>input::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-input-row>.x-input-input>input:-ms-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input::-webkit-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input[disabled]{color:var(--x-text-500)}.x-input-row>.x-input-input>input:focus{border-color:var(--x-primary);outline:0}.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base);z-index:2}.x-input-row>.x-input-input:hover>input{border-color:var(--x-primary-300)}.x-input-row>.x-input-input:focus>input{border-color:var(--x-primary);outline:0}.x-input-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-input-value-template .x-input-input>input.x-input-has-value-template{color:transparent!important}.x-input-value-template-value{position:absolute;display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%}.x-input-value-template-value:hover+input{border-color:var(--x-primary-300)}.x-input-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-input.x-invalid>label,.x-input.x-required>label{color:var(--x-danger)}.x-input.x-invalid .x-input-input>x-icon,.x-input.x-required .x-input-input>x-icon{color:var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error,.x-input.x-required .x-input-input .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-input.x-invalid .x-input-input .x-border-error.x-top-left,.x-input.x-required .x-input-input .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-top-right,.x-input.x-required .x-input-input .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-left,.x-input.x-required .x-input-input .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-right,.x-input.x-required .x-input-input .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-disabled>.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);cursor:not-allowed}.x-input.x-disabled>.x-input-row>.x-input-input>input{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a100)}.x-input.x-disabled>.x-input-row>.x-input-input>.x-input-value-template-value{color:var(--x-text-400);cursor:not-allowed}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);right:0;left:inherit;opacity:0;cursor:pointer;z-index:2;display:inline-flex;align-items:center;justify-content:center}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear:hover{color:var(--x-text-300)}.x-input.x-clearable>.x-input-row>.x-input-input:hover>input .x-input-clear,.x-input.x-clearable>.x-input-row>.x-input-input:hover>.x-input-value-template-value .x-input-clear{opacity:1}.x-input.x-clearable.x-clear-show>.x-input-row>.x-input-input>.x-input-clear{opacity:1}.x-input-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:0;width:3rem;display:inline-flex;text-align:center;justify-content:center}.x-input.x-direction-row>label{padding:0 .5rem 0 0}.x-input.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-input.x-direction-column,.x-input.x-direction-column-reverse{align-items:inherit}.x-input-icon>.x-input-row>.x-input-input>x-icon{position:absolute;font-size:var(--x-font-size-medium);display:inline-flex;align-items:center;justify-content:center}.x-input-icon-left>.x-input-row>.x-input-input>input,.x-input-icon-left>.x-input-row>.x-input-input>.x-input-value-template-value{padding-left:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-left>.x-input-row>.x-input-input>x-icon{left:0}.x-input-icon-right>.x-input-row>.x-input-input>input,.x-input-icon-right>.x-input-row>.x-input-input>.x-input-value-template-value{padding-right:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-right>.x-input-row>.x-input-input>x-icon{right:0}.x-input-icon-right>.x-input-row>.x-input-input>.x-input-max-length{right:inherit;left:0}.x-input-bordered>.x-input-row>.x-input-input>input{border-width:var(--x-border-width);background-color:var(--x-background)}.x-input-bordered .x-input-row .x-input-row-before:not(.x-input-row-before-template){border-width:var(--x-border-width);border-right-width:0}.x-input-bordered .x-input-row .x-input-row-after:not(.x-input-row-after-template){border-width:var(--x-border-width);border-left-width:0}.x-input-before>.x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-input-before-template .x-input-input>input:hover,.x-input-before-template .x-input-input>input:focus{z-index:1}.x-input-after>.x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-input-after-template>.x-input-row>.x-input-input>input:hover,.x-input-after-template>.x-input-row>.x-input-input>input:focus{z-index:1}.x-input-active .x-input-row>.x-input-input>input{border-color:var(--x-primary)}.x-input-pointer .x-input-row>.x-input-input>input,.x-input-pointer .x-input-row>.x-input-input>x-icon,.x-input-pointer .x-input-row>.x-input-input>.x-input-value-template-value{cursor:pointer}.x-input-big>.x-input-row>.x-input-input>input,.x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-input>x-icon{height:var(--x-height-big);width:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-large>.x-input-row>.x-input-input>input,.x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-input>x-icon{height:var(--x-height-large);width:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-medium>.x-input-row>.x-input-input>input,.x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-input>x-icon{height:var(--x-height-medium);width:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-small>.x-input-row>.x-input-input>input,.x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-input>x-icon{height:var(--x-height-small);width:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-mini>.x-input-row>.x-input-input>input,.x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-input>x-icon{height:var(--x-height-mini);width:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input{margin:0;padding:0}\n"] }]
|
|
513
|
+
args: [{ selector: `${XInputPrefix}`, imports: [NgClass, NgStyle, FormsModule, ReactiveFormsModule, XIconComponent, XOutletDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XInputComponent)], template: "<div\r\n #inputElement\r\n class=\"x-input\"\r\n [class.x-flex]=\"justify() || align() || direction()\"\r\n [class.x-disabled]=\"disabledComputed()\"\r\n [class.x-required]=\"requiredIsEmpty()\"\r\n [class.x-invalid]=\"invalid()\"\r\n [class.x-clearable]=\"clearable()\"\r\n [class.x-clear-show]=\"clearShow()\"\r\n [class.x-input-icon]=\"getIcon()\"\r\n [class.x-input-active]=\"active()\"\r\n [class.x-input-focus]=\"focused()\"\r\n [class.x-input-pointer]=\"pointer()\"\r\n [class.x-input-bordered]=\"bordered()\"\r\n [class.x-input-filled]=\"variant() === 'filled'\"\r\n [class.x-input-borderless]=\"variant() === 'borderless' || (variant() === 'outlined' && !bordered())\"\r\n [class.x-input-underlined]=\"variant() === 'underlined'\"\r\n [class.x-input-icon-left]=\"getIconLayoutLeft()\"\r\n [class.x-input-icon-right]=\"getIconLayoutRight()\"\r\n [class.x-input-after]=\"after()\"\r\n [class.x-input-before]=\"before()\"\r\n [class.x-input-after-template]=\"afterIsTemplate()\"\r\n [class.x-input-before-template]=\"beforeIsTemplate()\"\r\n [class.x-input-value-template]=\"valueTpl()\"\r\n [ngClass]=\"classMap()\"\r\n>\r\n @if (label()) {\r\n <label\r\n [class.x-input-label-required]=\"requiredComputed()\"\r\n [style.width]=\"labelWidth()\"\r\n [ngClass]=\"labelMapSignal()\"\r\n >{{ label() }}</label\r\n >\r\n }\r\n <div class=\"x-input-row\">\r\n @if (before()) {\r\n <div class=\"x-input-row-before\" [class.x-input-row-before-template]=\"beforeIsTemplate()\">\r\n <ng-container *xOutlet=\"before()\">{{ before() }}</ng-container>\r\n </div>\r\n }\r\n <div class=\"x-input-input\" (mouseenter)=\"xMouseenter.emit($event)\" (mouseleave)=\"xMouseleave.emit($event)\">\r\n @if (valueTpl()) {\r\n <div\r\n #inputValueRef\r\n class=\"x-input-value-template-value\"\r\n [style.left]=\"paddingLeft()\"\r\n [style.padding-left]=\"0\"\r\n [style.padding-right]=\"0\"\r\n [style.width]=\"getTemplateWidth()\"\r\n (click)=\"xClick.emit($event)\"\r\n >\r\n <ng-container\r\n *xOutlet=\"valueTpl()!; context: valueTplContext() ? valueTplContext() : { $value: value() }\"\r\n ></ng-container>\r\n </div>\r\n }\r\n <input\r\n #inputRef\r\n autocomplete=\"off\"\r\n class=\"x-input-frame\"\r\n [class.x-input-has-value-template]=\"!!valueTpl()\"\r\n [ngStyle]=\"inputStyle()\"\r\n [type]=\"type()\"\r\n [placeholder]=\"placeholder()\"\r\n [required]=\"requiredComputed()\"\r\n [disabled]=\"disabledComputed()\"\r\n [readonly]=\"readonly()\"\r\n [maxlength]=\"maxlength()\"\r\n [min]=\"min()\"\r\n [max]=\"max()\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"valueChange.next($event)\"\r\n [style.padding-left]=\"paddingLeft()\"\r\n [style.padding-right]=\"paddingRight()\"\r\n (focus)=\"xFocus.emit($event)\"\r\n (blur)=\"xBlur.emit($event)\"\r\n (keydown)=\"formControlValidator(); xKeydown.emit($event)\"\r\n (click)=\"xClick.emit($event)\"\r\n (compositionstart)=\"xComposition.emit($event)\"\r\n (compositionend)=\"xComposition.emit($event)\"\r\n />\r\n @if (clearShow() && !iconSpin()) {\r\n <x-icon class=\"x-input-clear\" type=\"fto-x\" (click)=\"onClear()\"></x-icon>\r\n }\r\n @if (icon() && ((!clearShow() && getIconLayoutRight()) || getIconLayoutLeft() || iconSpin())) {\r\n <x-icon [type]=\"icon()\" [spin]=\"iconSpin()\" (click)=\"xClick.emit($event)\"></x-icon>\r\n }\r\n @if (maxlength() && lengthTotal()) {\r\n <span class=\"x-input-max-length\" [style.width]=\"getMaxLengthWidth()\">{{ lengthTotal() }}</span>\r\n }\r\n @if (invalid()) {\r\n <span class=\"x-input-error-message\">{{ invalidMessage() }}</span>\r\n }\r\n @if (requiredIsEmpty() || invalid()) {\r\n <div class=\"x-border-error x-top-left\"></div>\r\n <div class=\"x-border-error x-top-right\"></div>\r\n <div class=\"x-border-error x-bottom-left\"></div>\r\n <div class=\"x-border-error x-bottom-right\"></div>\r\n }\r\n </div>\r\n @if (after()) {\r\n <div class=\"x-input-row-after\" [class.x-input-row-after-template]=\"afterIsTemplate()\">\r\n <ng-container *xOutlet=\"after()\">{{ after() }}</ng-container>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-input{display:inline-block;width:12rem}.x-input{width:100%}.x-input.x-flex{display:flex}.x-input.x-justify-start{justify-content:flex-start}.x-input.x-justify-center{justify-content:center}.x-input.x-justify-end{justify-content:flex-end}.x-input.x-justify-space-between{justify-content:space-between}.x-input.x-justify-space-around{justify-content:space-around}.x-input.x-align-start{align-items:flex-start}.x-input.x-align-center{align-items:center}.x-input.x-align-end{align-items:flex-end}.x-input.x-direction-column{flex-direction:column}.x-input.x-direction-column-reverse{flex-direction:column-reverse}.x-input.x-direction-row{flex-direction:row}.x-input.x-direction-row-reverse{flex-direction:row-reverse}.x-input>label{display:inline-block;white-space:nowrap;position:relative;color:var(--x-text-300);font-weight:600}.x-input>label.x-text-align-start{text-align:start}.x-input>label.x-text-align-center{text-align:center}.x-input>label.x-text-align-end{text-align:end}.x-input-row{flex:1;display:flex;align-items:center}.x-input-row .x-input-row-before:not(.x-input-row-before-template),.x-input-row .x-input-row-after:not(.x-input-row-after-template){border:var(--x-border-width) var(--x-border-style) var(--x-border);background-color:var(--x-background-a100);border-width:0}.x-input-row .x-input-row-before:not(.x-input-row-before-template){border-top-left-radius:var(--x-border-radius);border-bottom-left-radius:var(--x-border-radius)}.x-input-row .x-input-row-after:not(.x-input-row-before-template){border-top-right-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-input-row .x-input-row-before-template{display:contents}.x-input-row .x-input-row-before-template input,.x-input-row .x-input-row-before-template .x-button{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.x-input-row .x-input-row-before-template input{margin-right:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-after-template{display:contents}.x-input-row .x-input-row-after-template input,.x-input-row .x-input-row-after-template .x-button{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.x-input-row .x-input-row-after-template input{margin-left:calc(var(--x-border-width) * -1)}.x-input-row .x-input-row-before-template:hover,.x-input-row .x-input-row-before-template:focus{z-index:1}.x-input-row .x-input-row-before-template input:hover,.x-input-row .x-input-row-before-template input:focus,.x-input-row .x-input-row-after-template input:hover,.x-input-row .x-input-row-after-template input:focus{z-index:1}.x-input-row>.x-input-input{position:relative;width:100%;display:inline-flex;align-items:center}.x-input-row>.x-input-input>input{flex:1;width:100%;font-size:var(--x-font-size);background-image:none;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-radius:var(--x-border-radius);border-width:0;box-shadow:var(--x-box-shadow) transparent;transition-property:background-color,border-color,border-width,border-radius;transition-duration:var(--x-animation-duration-slow)}.x-input-row>.x-input-input>input::-moz-placeholder{color:var(--x-text-700);opacity:1}.x-input-row>.x-input-input>input:-ms-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input::-webkit-input-placeholder{color:var(--x-text-700)}.x-input-row>.x-input-input>input[disabled]{color:var(--x-text-500)}.x-input-row>.x-input-input>input:focus{border-color:var(--x-primary);outline:0}.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);transition:all var(--x-animation-duration-base);z-index:2}.x-input-row>.x-input-input:hover>input{border-color:var(--x-primary-300)}.x-input-row>.x-input-input:focus>input{border-color:var(--x-primary);outline:0}.x-input-label-required:before{display:inline-block;margin-right:.25rem;color:var(--x-danger);line-height:1;font-size:var(--x-font-size-small);content:\"*\"}.x-input-value-template .x-input-input>input.x-input-has-value-template{color:transparent!important}.x-input-value-template-value{position:absolute;display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:100%}.x-input-value-template-value:hover+input{border-color:var(--x-primary-300)}.x-input-error-message{position:absolute;bottom:0;left:0;font-size:var(--x-font-size)-.125rem;color:var(--x-danger);margin-bottom:calc((var(--x-font-size)) * -2);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-input.x-invalid>label,.x-input.x-required>label{color:var(--x-danger)}.x-input.x-invalid .x-input-input>x-icon,.x-input.x-required .x-input-input>x-icon{color:var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error,.x-input.x-required .x-input-input .x-border-error{position:absolute;height:.75rem;width:.75rem;z-index:10}.x-input.x-invalid .x-input-input .x-border-error.x-top-left,.x-input.x-required .x-input-input .x-border-error.x-top-left{border-top-left-radius:var(--x-border-radius);top:0;left:0;border-top:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-top-right,.x-input.x-required .x-input-input .x-border-error.x-top-right{border-top-right-radius:var(--x-border-radius);top:0;right:0;border-top:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-left,.x-input.x-required .x-input-input .x-border-error.x-bottom-left{border-bottom-left-radius:var(--x-border-radius);bottom:0;left:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-left:var(--x-border-width) solid var(--x-danger)}.x-input.x-invalid .x-input-input .x-border-error.x-bottom-right,.x-input.x-required .x-input-input .x-border-error.x-bottom-right{border-bottom-right-radius:var(--x-border-radius);bottom:0;right:0;border-bottom:var(--x-border-width) solid var(--x-danger);border-right:var(--x-border-width) solid var(--x-danger)}.x-input.x-disabled>.x-input-row>.x-input-input>x-icon{color:var(--x-text-400);cursor:not-allowed}.x-input.x-disabled>.x-input-row>.x-input-input>input{color:var(--x-text-400);cursor:not-allowed;border-color:var(--x-border-100);background-color:var(--x-background-a300)}.x-input.x-disabled>.x-input-row>.x-input-input>.x-input-value-template-value{color:var(--x-text-400);cursor:not-allowed}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear{position:absolute;color:var(--x-text-400);font-size:var(--x-font-size-medium);right:0;left:inherit;opacity:0;cursor:pointer;z-index:2;display:inline-flex;align-items:center;justify-content:center}.x-input.x-clearable>.x-input-row>.x-input-input>.x-input-clear:hover{color:var(--x-text-300)}.x-input.x-clearable>.x-input-row>.x-input-input:hover>input .x-input-clear,.x-input.x-clearable>.x-input-row>.x-input-input:hover>.x-input-value-template-value .x-input-clear{opacity:1}.x-input.x-clearable.x-clear-show>.x-input-row>.x-input-input>.x-input-clear{opacity:1}.x-input-max-length{position:absolute;font-size:var(--x-font-size-small);color:var(--x-text-400);padding:0 .4rem;right:0;width:3rem;display:inline-flex;text-align:center;justify-content:center}.x-input.x-direction-row>label{padding:0 .5rem 0 0}.x-input.x-direction-row-reverse>label{padding:0 0 0 .5rem}.x-input.x-direction-column,.x-input.x-direction-column-reverse{align-items:inherit}.x-input-icon>.x-input-row>.x-input-input>x-icon{position:absolute;font-size:var(--x-font-size-medium);display:inline-flex;align-items:center;justify-content:center}.x-input-icon-left>.x-input-row>.x-input-input>input,.x-input-icon-left>.x-input-row>.x-input-input>.x-input-value-template-value{padding-left:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-left>.x-input-row>.x-input-input>x-icon{left:0}.x-input-icon-right>.x-input-row>.x-input-input>input,.x-input-icon-right>.x-input-row>.x-input-input>.x-input-value-template-value{padding-right:calc(var(--x-font-size-medium) + .8rem)}.x-input-icon-right>.x-input-row>.x-input-input>x-icon{right:0}.x-input-icon-right>.x-input-row>.x-input-input>.x-input-max-length{right:inherit;left:0}.x-input-bordered>.x-input-row>.x-input-input>input{border-width:var(--x-border-width);background-color:var(--x-background)}.x-input-bordered .x-input-row .x-input-row-before:not(.x-input-row-before-template){border-width:var(--x-border-width);border-right-width:0}.x-input-bordered .x-input-row .x-input-row-after:not(.x-input-row-after-template){border-width:var(--x-border-width);border-left-width:0}.x-input-filled>.x-input-row>.x-input-input>input{border-color:transparent;background-color:var(--x-background-a200)}.x-input-filled>.x-input-row>.x-input-input>input:hover{background-color:var(--x-background-a300)}.x-input-filled>.x-input-row>.x-input-input>input:focus{border-color:var(--x-primary);background-color:var(--x-background)}.x-input-borderless>.x-input-row>.x-input-input>input{border:none}.x-input-underlined>.x-input-row>.x-input-input>input{background-color:transparent;border-width:0 0 var(--x-border-width);border-radius:0}.x-input-before>.x-input-row>.x-input-input>input{border-top-left-radius:0;border-bottom-left-radius:0}.x-input-before-template .x-input-input>input:hover,.x-input-before-template .x-input-input>input:focus{z-index:1}.x-input-after>.x-input-row>.x-input-input>input{border-top-right-radius:0;border-bottom-right-radius:0}.x-input-after-template>.x-input-row>.x-input-input>input:hover,.x-input-after-template>.x-input-row>.x-input-input>input:focus{z-index:1}.x-input-active .x-input-row>.x-input-input>input{border-color:var(--x-primary)}.x-input-pointer .x-input-row>.x-input-input>input,.x-input-pointer .x-input-row>.x-input-input>x-icon,.x-input-pointer .x-input-row>.x-input-input>.x-input-value-template-value{cursor:pointer}.x-input-big>.x-input-row>.x-input-input>input,.x-input-big>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-input>x-icon{height:var(--x-height-big);width:var(--x-height-big)}.x-input-big>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-big>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-big);line-height:var(--x-height-big);padding:0 var(--x-padding-big)}.x-input-big>label{height:var(--x-height-big);line-height:var(--x-height-big)}.x-input-large>.x-input-row>.x-input-input>input,.x-input-large>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-input>x-icon{height:var(--x-height-large);width:var(--x-height-large)}.x-input-large>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-large>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-large);line-height:var(--x-height-large);padding:0 var(--x-padding-large)}.x-input-large>label{height:var(--x-height-large);line-height:var(--x-height-large)}.x-input-medium>.x-input-row>.x-input-input>input,.x-input-medium>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-input>x-icon{height:var(--x-height-medium);width:var(--x-height-medium)}.x-input-medium>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-medium>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-medium);line-height:var(--x-height-medium);padding:0 var(--x-padding-medium)}.x-input-medium>label{height:var(--x-height-medium);line-height:var(--x-height-medium)}.x-input-small>.x-input-row>.x-input-input>input,.x-input-small>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-input>x-icon{height:var(--x-height-small);width:var(--x-height-small)}.x-input-small>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-small>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-small);line-height:var(--x-height-small);padding:0 var(--x-padding-small)}.x-input-small>label{height:var(--x-height-small);line-height:var(--x-height-small)}.x-input-mini>.x-input-row>.x-input-input>input,.x-input-mini>.x-input-row>.x-input-input>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-input>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-value-template-value{min-height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>.x-input-row>.x-input-input>.x-input-max-length{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-input>x-icon{height:var(--x-height-mini);width:var(--x-height-mini)}.x-input-mini>.x-input-row>.x-input-row-before:not(.x-input-row-before-template),.x-input-mini>.x-input-row>.x-input-row-after:not(.x-input-row-after-template){height:var(--x-height-mini);line-height:var(--x-height-mini);padding:0 var(--x-padding-mini)}.x-input-mini>label{height:var(--x-height-mini);line-height:var(--x-height-mini)}.x-input{margin:0;padding:0}\n"] }]
|
|
509
514
|
}], propDecorators: { getWidth: [{
|
|
510
515
|
type: HostBinding,
|
|
511
516
|
args: ['style.width']
|