@masterteam/components 0.0.5 → 0.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/button/index.d.ts +34 -0
- package/fesm2022/masterteam-components-button.mjs +68 -0
- package/fesm2022/masterteam-components-button.mjs.map +1 -0
- package/fesm2022/masterteam-components-checkbox-field.mjs +10 -10
- package/fesm2022/masterteam-components-checkbox-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-date-field.mjs +14 -14
- package/fesm2022/masterteam-components-date-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-field-validation.mjs +8 -8
- package/fesm2022/masterteam-components-field-validation.mjs.map +1 -1
- package/fesm2022/masterteam-components-icon-field.mjs +5 -5
- package/fesm2022/masterteam-components-icon-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-multi-select-field.mjs +19 -19
- package/fesm2022/masterteam-components-multi-select-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-number-field.mjs +15 -15
- package/fesm2022/masterteam-components-number-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-select-field.mjs +20 -20
- package/fesm2022/masterteam-components-select-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-slider-field.mjs +20 -20
- package/fesm2022/masterteam-components-slider-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-text-field.mjs +14 -14
- package/fesm2022/masterteam-components-text-field.mjs.map +1 -1
- package/fesm2022/masterteam-components-textarea-field.mjs +13 -13
- package/fesm2022/masterteam-components-textarea-field.mjs.map +1 -1
- package/fesm2022/masterteam-components.mjs +6 -0
- package/fesm2022/masterteam-components.mjs.map +1 -1
- package/field-validation/index.d.ts +1 -1
- package/package.json +6 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-multi-select-field.mjs","sources":["../../../../packages/masterteam/components/multi-select-field/multi-select-field.ts","../../../../packages/masterteam/components/multi-select-field/multi-select-field.html","../../../../packages/masterteam/components/multi-select-field/masterteam-components-multi-select-field.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n HostBinding,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n inject,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { MultiSelect } from 'primeng/multiselect';\nimport { MultiSelectModule } from 'primeng/multiselect';\n\n@Component({\n selector: 'mt-multi-select-field',\n templateUrl: './multi-select-field.html',\n styleUrls: ['./multi-select-field.scss'],\n standalone: true,\n imports: [FormsModule, MultiSelectModule],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class MultiSelectField\n implements ControlValueAccessor, OnInit, OnChanges\n{\n @ViewChild('multiSelect', { static: true })\n multiSelect: MultiSelect;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>();\n readonly placeholder = input<string>();\n readonly class = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<MultiSelect>>();\n readonly options = input<any[]>();\n readonly optionValue = input<string>();\n readonly optionLabel = input<string>();\n readonly filter = input<boolean>(false);\n readonly filterBy = input<string>();\n readonly dataKey = input<string>();\n readonly showClear = input<boolean>(false);\n readonly display = input<string>('chip');\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<any>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: any) => void = () => {};\n\n public ngControl = inject(NgControl, { self: true });\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToMultiSelect() {\n Object.assign(this.multiSelect, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n if (this.pInputs()) {\n this.applyInputsToMultiSelect();\n }\n }\n onValueChange(value: any) {\n this.onModelChange(value);\n this.value.set(value);\n this.onChange.emit(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToMultiSelect();\n }\n }\n\n writeValue(value: any) {\n this.value.set(value);\n this.multiSelect.writeValue(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n (click)=\"multiSelect?.show()\"\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-multiSelect\n #multiSelect\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [options]=\"options()\"\n [display]=\"display()\"\n [optionLabel]=\"optionLabel()\"\n [optionValue]=\"optionValue()\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name?.toString() || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n [filter]=\"filter()\"\n [filterBy]=\"filterBy()\"\n [dataKey]=\"dataKey()\"\n styleClass=\"w-full\"\n appendTo=\"body\"\n [showClear]=\"showClear()\"\n></p-multiSelect>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MAgCa,gBAAgB,CAAA;AAI3B,IAAA,WAAW;AAEF,IAAA,KAAK,GAAG,KAAK,CAAU,IAAI,CAAC;IAC5B,KAAK,GAAG,KAAK,EAAU;IACvB,WAAW,GAAG,KAAK,EAAU;AAC7B,IAAA,KAAK,GAAG,KAAK,CAAS,EAAE,CAAC;AACzB,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,CAAC;IAChC,OAAO,GAAG,KAAK,EAAwB;IACvC,OAAO,GAAG,KAAK,EAAS;IACxB,WAAW,GAAG,KAAK,EAAU;IAC7B,WAAW,GAAG,KAAK,EAAU;AAC7B,IAAA,MAAM,GAAG,KAAK,CAAU,KAAK,CAAC;IAC9B,QAAQ,GAAG,KAAK,EAAU;IAC1B,OAAO,GAAG,KAAK,EAAU;AACzB,IAAA,SAAS,GAAG,KAAK,CAAU,KAAK,CAAC;AACjC,IAAA,OAAO,GAAG,KAAK,CAAS,MAAM,CAAC;AAC9B,IAAA,QAAQ,GAAsB,IAAI,YAAY,EAAE;AAEpC,IAAA,UAAU;AAEhC,IAAA,iBAAiB,GAAG,UAAU,CAAC,QAAQ;AACvC,IAAA,KAAK,GAAG,MAAM,CAAM,IAAI,CAAC;AACzB,IAAA,QAAQ,GAAG,MAAM,CAAU,KAAK,CAAC;AAEjC,IAAA,SAAS,GAAe,MAAK,EAAE,CAAC;AAChC,IAAA,aAAa,GAAyB,MAAK,EAAE,CAAC;IAEvC,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAEpD,IAAA,WAAA,GAAA;AACE,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI;QACrC;IACF;IAEA,wBAAwB,GAAA;AACtB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;IACjD;IAEA,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAC9B,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB,IAAI,CAAC,wBAAwB,EAAE;QACjC;IACF;AACA,IAAA,aAAa,CAAC,KAAU,EAAA;AACtB,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AACzB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;IAC3B;AACA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;YACtB,IAAI,CAAC,wBAAwB,EAAE;QACjC;IACF;AAEA,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC;IACpC;AAEA,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACtB,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE;IACzB;AAEA,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,QAAiB,EAAA;AAChC,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC7B;uGA3EW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,cAAA,EAAA,YAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,aAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChC7B,61BA4BA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDDY,WAAW,8VAAE,iBAAiB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,WAAA,EAAA,YAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,cAAA,EAAA,MAAA,EAAA,eAAA,EAAA,SAAA,EAAA,uBAAA,EAAA,aAAA,EAAA,sBAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,cAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,aAAA,EAAA,WAAA,EAAA,cAAA,EAAA,cAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,SAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,aAAA,EAAA,aAAA,EAAA,YAAA,EAAA,UAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAK7B,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAV5B,SAAS;+BACE,uBAAuB,EAAA,UAAA,EAGrB,IAAI,EAAA,OAAA,EACP,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAA,IAAA,EACnC;AACJ,wBAAA,KAAK,EAAE,YAAY;AACpB,qBAAA,EAAA,QAAA,EAAA,61BAAA,EAAA;wDAMD,WAAW,EAAA,CAAA;sBADV,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAiBhC,QAAQ,EAAA,CAAA;sBAAjB;gBAEqB,UAAU,EAAA,CAAA;sBAA/B,WAAW;uBAAC,OAAO;;;AEtDtB;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"masterteam-components-multi-select-field.mjs","sources":["../../../../packages/masterteam/components/multi-select-field/multi-select-field.ts","../../../../packages/masterteam/components/multi-select-field/multi-select-field.html","../../../../packages/masterteam/components/multi-select-field/masterteam-components-multi-select-field.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n HostBinding,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n inject,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { MultiSelect } from 'primeng/multiselect';\nimport { MultiSelectModule } from 'primeng/multiselect';\n\n@Component({\n selector: 'mt-multi-select-field',\n templateUrl: './multi-select-field.html',\n styleUrls: ['./multi-select-field.scss'],\n standalone: true,\n imports: [FormsModule, MultiSelectModule],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class MultiSelectField\n implements ControlValueAccessor, OnInit, OnChanges\n{\n @ViewChild('multiSelect', { static: true })\n multiSelect: MultiSelect;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>();\n readonly placeholder = input<string>();\n readonly class = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<MultiSelect>>();\n readonly options = input<any[]>();\n readonly optionValue = input<string>();\n readonly optionLabel = input<string>();\n readonly filter = input<boolean>(false);\n readonly filterBy = input<string>();\n readonly dataKey = input<string>();\n readonly showClear = input<boolean>(false);\n readonly display = input<string>('chip');\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<any>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: any) => void = () => {};\n\n public ngControl = inject(NgControl, { self: true });\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToMultiSelect() {\n Object.assign(this.multiSelect, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n if (this.pInputs()) {\n this.applyInputsToMultiSelect();\n }\n }\n onValueChange(value: any) {\n this.onModelChange(value);\n this.value.set(value);\n this.onChange.emit(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToMultiSelect();\n }\n }\n\n writeValue(value: any) {\n this.value.set(value);\n this.multiSelect.writeValue(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n (click)=\"multiSelect?.show()\"\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-multiSelect\n #multiSelect\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [options]=\"options()\"\n [display]=\"display()\"\n [optionLabel]=\"optionLabel()\"\n [optionValue]=\"optionValue()\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name?.toString() || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n [filter]=\"filter()\"\n [filterBy]=\"filterBy()\"\n [dataKey]=\"dataKey()\"\n styleClass=\"w-full\"\n appendTo=\"body\"\n [showClear]=\"showClear()\"\n></p-multiSelect>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -7,22 +7,22 @@ import { InputNumberModule } from 'primeng/inputnumber';
|
|
|
7
7
|
|
|
8
8
|
class NumberField {
|
|
9
9
|
inputNumber;
|
|
10
|
-
field = input(true);
|
|
11
|
-
label = input();
|
|
12
|
-
placeholder = input();
|
|
13
|
-
class = input('');
|
|
14
|
-
readonly = input(false);
|
|
15
|
-
pInputs = input();
|
|
16
|
-
format = input(false);
|
|
17
|
-
maxFractionDigits = input(2);
|
|
10
|
+
field = input(true, ...(ngDevMode ? [{ debugName: "field" }] : []));
|
|
11
|
+
label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
|
|
12
|
+
placeholder = input(...(ngDevMode ? [undefined, { debugName: "placeholder" }] : []));
|
|
13
|
+
class = input('', ...(ngDevMode ? [{ debugName: "class" }] : []));
|
|
14
|
+
readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : []));
|
|
15
|
+
pInputs = input(...(ngDevMode ? [undefined, { debugName: "pInputs" }] : []));
|
|
16
|
+
format = input(false, ...(ngDevMode ? [{ debugName: "format" }] : []));
|
|
17
|
+
maxFractionDigits = input(2, ...(ngDevMode ? [{ debugName: "maxFractionDigits" }] : []));
|
|
18
18
|
// TODO: wait for primeng to allow undefined and remove these numbers
|
|
19
|
-
min = input(-999999999999999);
|
|
20
|
-
max = input(999999999999999);
|
|
19
|
+
min = input(-999999999999999, ...(ngDevMode ? [{ debugName: "min" }] : []));
|
|
20
|
+
max = input(999999999999999, ...(ngDevMode ? [{ debugName: "max" }] : []));
|
|
21
21
|
styleClass;
|
|
22
22
|
ngControl = inject(NgControl, { self: true });
|
|
23
23
|
requiredValidator = Validators.required;
|
|
24
|
-
value = signal(null);
|
|
25
|
-
disabled = signal(false);
|
|
24
|
+
value = signal(null, ...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
25
|
+
disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
26
26
|
onTouched = () => { };
|
|
27
27
|
onModelChange = () => { };
|
|
28
28
|
constructor() {
|
|
@@ -60,10 +60,10 @@ class NumberField {
|
|
|
60
60
|
setDisabledState(disabled) {
|
|
61
61
|
this.disabled.set(disabled);
|
|
62
62
|
}
|
|
63
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0
|
|
64
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: NumberField, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
64
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.0", type: NumberField, isStandalone: true, selector: "mt-number-field", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null }, format: { classPropertyName: "format", publicName: "format", isSignal: true, isRequired: false, transformFunction: null }, maxFractionDigits: { classPropertyName: "maxFractionDigits", publicName: "maxFractionDigits", 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 } }, host: { properties: { "class": "this.styleClass" }, classAttribute: "grid gap-1" }, viewQueries: [{ propertyName: "inputNumber", first: true, predicate: ["inputNumber"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-inputnumber\n #inputNumber\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [format]=\"format()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [maxFractionDigits]=\"maxFractionDigits()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n styleClass=\"w-full\"\n inputStyleClass=\"w-full\"\n></p-inputnumber>\n", styles: [":host p-inputNumber{display:block;width:100%}:host p-inputNumber input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i2.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "placeholder", "tabindex", "title", "ariaLabelledBy", "ariaDescribedBy", "ariaLabel", "ariaRequired", "autocomplete", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }] });
|
|
65
65
|
}
|
|
66
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: NumberField, decorators: [{
|
|
67
67
|
type: Component,
|
|
68
68
|
args: [{ selector: 'mt-number-field', standalone: true, imports: [FormsModule, InputNumberModule], host: {
|
|
69
69
|
class: 'grid gap-1',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-number-field.mjs","sources":["../../../../packages/masterteam/components/number-field/number-field.ts","../../../../packages/masterteam/components/number-field/number-field.html","../../../../packages/masterteam/components/number-field/masterteam-components-number-field.ts"],"sourcesContent":["import {\n Component,\n HostBinding,\n OnChanges,\n OnInit,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n inject,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { InputNumberModule, InputNumber } from 'primeng/inputnumber';\n\n@Component({\n selector: 'mt-number-field',\n standalone: true,\n imports: [FormsModule, InputNumberModule],\n templateUrl: './number-field.html',\n styleUrls: ['./number-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class NumberField implements ControlValueAccessor, OnInit, OnChanges {\n @ViewChild('inputNumber', { static: true })\n inputNumber: InputNumber;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>();\n readonly placeholder = input<string>();\n readonly class = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<InputNumber>>();\n readonly format = input<boolean>(false);\n readonly maxFractionDigits = input<number>(2);\n // TODO: wait for primeng to allow undefined and remove these numbers\n readonly min = input<number>(-999999999999999);\n readonly max = input<number>(999999999999999);\n\n @HostBinding('class') styleClass: string;\n\n public ngControl = inject(NgControl, { self: true });\n\n requiredValidator = Validators.required;\n value = signal<number | null>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: number | null) => void = () => {};\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToInputNumber() {\n Object.assign(this.inputNumber, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n if (this.pInputs()) {\n this.applyInputsToInputNumber();\n }\n }\n onValueChange(value: number | null) {\n this.onModelChange(value);\n this.value.set(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToInputNumber();\n }\n }\n\n writeValue(value: number | null) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-inputnumber\n #inputNumber\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [format]=\"format()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [maxFractionDigits]=\"maxFractionDigits()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n styleClass=\"w-full\"\n inputStyleClass=\"w-full\"\n></p-inputnumber>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MA6Ba,WAAW,CAAA;AAEtB,IAAA,WAAW;AAEF,IAAA,KAAK,GAAG,KAAK,CAAU,IAAI,
|
|
1
|
+
{"version":3,"file":"masterteam-components-number-field.mjs","sources":["../../../../packages/masterteam/components/number-field/number-field.ts","../../../../packages/masterteam/components/number-field/number-field.html","../../../../packages/masterteam/components/number-field/masterteam-components-number-field.ts"],"sourcesContent":["import {\n Component,\n HostBinding,\n OnChanges,\n OnInit,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n inject,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { InputNumberModule, InputNumber } from 'primeng/inputnumber';\n\n@Component({\n selector: 'mt-number-field',\n standalone: true,\n imports: [FormsModule, InputNumberModule],\n templateUrl: './number-field.html',\n styleUrls: ['./number-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class NumberField implements ControlValueAccessor, OnInit, OnChanges {\n @ViewChild('inputNumber', { static: true })\n inputNumber: InputNumber;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>();\n readonly placeholder = input<string>();\n readonly class = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<InputNumber>>();\n readonly format = input<boolean>(false);\n readonly maxFractionDigits = input<number>(2);\n // TODO: wait for primeng to allow undefined and remove these numbers\n readonly min = input<number>(-999999999999999);\n readonly max = input<number>(999999999999999);\n\n @HostBinding('class') styleClass: string;\n\n public ngControl = inject(NgControl, { self: true });\n\n requiredValidator = Validators.required;\n value = signal<number | null>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: number | null) => void = () => {};\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToInputNumber() {\n Object.assign(this.inputNumber, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n if (this.pInputs()) {\n this.applyInputsToInputNumber();\n }\n }\n onValueChange(value: number | null) {\n this.onModelChange(value);\n this.value.set(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToInputNumber();\n }\n }\n\n writeValue(value: number | null) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-inputnumber\n #inputNumber\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [format]=\"format()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [maxFractionDigits]=\"maxFractionDigits()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n styleClass=\"w-full\"\n inputStyleClass=\"w-full\"\n></p-inputnumber>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -8,26 +8,26 @@ import { Message } from 'primeng/message';
|
|
|
8
8
|
class SelectField {
|
|
9
9
|
cdr = inject(ChangeDetectorRef);
|
|
10
10
|
dropdown;
|
|
11
|
-
field = input(true);
|
|
12
|
-
label = input('');
|
|
13
|
-
placeholder = input('');
|
|
14
|
-
hasPlaceholderPrefix = input(true);
|
|
15
|
-
class = input('');
|
|
16
|
-
readonly = input(false);
|
|
17
|
-
pInputs = input();
|
|
18
|
-
options = input(undefined);
|
|
19
|
-
optionValue = input(undefined);
|
|
20
|
-
optionLabel = input(undefined);
|
|
21
|
-
filter = input(undefined);
|
|
22
|
-
filterBy = input(undefined);
|
|
23
|
-
dataKey = input(undefined);
|
|
24
|
-
showClear = input(undefined);
|
|
25
|
-
clearAfterSelect = input(undefined);
|
|
11
|
+
field = input(true, ...(ngDevMode ? [{ debugName: "field" }] : []));
|
|
12
|
+
label = input('', ...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
13
|
+
placeholder = input('', ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
|
|
14
|
+
hasPlaceholderPrefix = input(true, ...(ngDevMode ? [{ debugName: "hasPlaceholderPrefix" }] : []));
|
|
15
|
+
class = input('', ...(ngDevMode ? [{ debugName: "class" }] : []));
|
|
16
|
+
readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : []));
|
|
17
|
+
pInputs = input(...(ngDevMode ? [undefined, { debugName: "pInputs" }] : []));
|
|
18
|
+
options = input(undefined, ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
19
|
+
optionValue = input(undefined, ...(ngDevMode ? [{ debugName: "optionValue" }] : []));
|
|
20
|
+
optionLabel = input(undefined, ...(ngDevMode ? [{ debugName: "optionLabel" }] : []));
|
|
21
|
+
filter = input(undefined, ...(ngDevMode ? [{ debugName: "filter" }] : []));
|
|
22
|
+
filterBy = input(undefined, ...(ngDevMode ? [{ debugName: "filterBy" }] : []));
|
|
23
|
+
dataKey = input(undefined, ...(ngDevMode ? [{ debugName: "dataKey" }] : []));
|
|
24
|
+
showClear = input(undefined, ...(ngDevMode ? [{ debugName: "showClear" }] : []));
|
|
25
|
+
clearAfterSelect = input(undefined, ...(ngDevMode ? [{ debugName: "clearAfterSelect" }] : []));
|
|
26
26
|
onChange = new EventEmitter();
|
|
27
27
|
styleClass;
|
|
28
28
|
requiredValidator = Validators.required;
|
|
29
|
-
value = signal(null);
|
|
30
|
-
disabled = signal(false);
|
|
29
|
+
value = signal(null, ...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
30
|
+
disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
31
31
|
onTouched = () => { };
|
|
32
32
|
onModelChange = () => { };
|
|
33
33
|
ngControl = inject(NgControl, { self: true });
|
|
@@ -79,10 +79,10 @@ class SelectField {
|
|
|
79
79
|
this.onChange.emit(null);
|
|
80
80
|
this.cdr.detectChanges();
|
|
81
81
|
}
|
|
82
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0
|
|
83
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0
|
|
82
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: SelectField, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.0", type: SelectField, isStandalone: true, selector: "mt-select-field", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, hasPlaceholderPrefix: { classPropertyName: "hasPlaceholderPrefix", publicName: "hasPlaceholderPrefix", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, optionValue: { classPropertyName: "optionValue", publicName: "optionValue", isSignal: true, isRequired: false, transformFunction: null }, optionLabel: { classPropertyName: "optionLabel", publicName: "optionLabel", isSignal: true, isRequired: false, transformFunction: null }, filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: false, transformFunction: null }, filterBy: { classPropertyName: "filterBy", publicName: "filterBy", isSignal: true, isRequired: false, transformFunction: null }, dataKey: { classPropertyName: "dataKey", publicName: "dataKey", isSignal: true, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", isSignal: true, isRequired: false, transformFunction: null }, clearAfterSelect: { classPropertyName: "clearAfterSelect", publicName: "clearAfterSelect", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange" }, host: { properties: { "class": "this.styleClass" }, classAttribute: "grid gap-1" }, viewQueries: [{ propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "@if (label()) {\n <label\n (click)=\"dropdown.show(); dropdown.focus()\"\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-select\n appendTo=\"body\"\n [overlayOptions]=\"{ baseZIndex: 1051 }\"\n #dropdown\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [options]=\"options()\"\n [optionLabel]=\"optionLabel()\"\n [optionValue]=\"optionValue()\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [id]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [class.p-invalid]=\"ngControl?.control?.invalid && ngControl?.control?.touched\"\n [class.border-red-500!]=\"\n ngControl?.control?.invalid && ngControl?.control?.touched\n \"\n placeholder=\"{{ hasPlaceholderPrefix() ? 'select' : '' }} {{\n placeholder() ?? label() ?? ''\n }}\"\n [filter]=\"filter()\"\n [filterBy]=\"filterBy()\"\n [dataKey]=\"dataKey()\"\n styleClass=\"w-full\"\n [showClear]=\"showClear()\"\n appendTo=\"body\"\n></p-select>\n@if (ngControl?.control?.invalid && ngControl?.control?.touched) {\n <p-message severity=\"error\" variant=\"simple\" size=\"small\"\n >{{ label() }} is required</p-message\n >\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: Select, selector: "p-select", inputs: ["id", "scrollHeight", "filter", "panelStyle", "styleClass", "panelStyleClass", "readonly", "editable", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "filterValue", "options", "appendTo"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "component", type: Message, selector: "p-message", inputs: ["severity", "text", "escape", "style", "styleClass", "closable", "icon", "closeIcon", "life", "showTransitionOptions", "hideTransitionOptions", "size", "variant"], outputs: ["onClose"] }] });
|
|
84
84
|
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0
|
|
85
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: SelectField, decorators: [{
|
|
86
86
|
type: Component,
|
|
87
87
|
args: [{ selector: 'mt-select-field', standalone: true, imports: [FormsModule, Select, Message], host: {
|
|
88
88
|
class: 'grid gap-1',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-select-field.mjs","sources":["../../../../packages/masterteam/components/select-field/select-field.ts","../../../../packages/masterteam/components/select-field/select-field.html","../../../../packages/masterteam/components/select-field/masterteam-components-select-field.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n HostBinding,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n inject,\n ChangeDetectorRef,\n} from '@angular/core';\n\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { Select } from 'primeng/select';\nimport { Message } from 'primeng/message';\n\n@Component({\n selector: 'mt-select-field',\n standalone: true,\n imports: [FormsModule, Select, Message],\n templateUrl: './select-field.html',\n styleUrls: ['./select-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class SelectField implements ControlValueAccessor, OnInit, OnChanges {\n cdr = inject(ChangeDetectorRef);\n @ViewChild('dropdown', { static: true })\n dropdown: Select;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>('');\n readonly placeholder = input<string>('');\n readonly hasPlaceholderPrefix = input<boolean>(true);\n readonly class = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<Select>>();\n readonly options = input<any[] | undefined>(undefined);\n readonly optionValue = input<string | undefined>(undefined);\n readonly optionLabel = input<string | undefined>(undefined);\n readonly filter = input<boolean | undefined>(undefined);\n readonly filterBy = input<string | undefined>(undefined);\n readonly dataKey = input<string | undefined>(undefined);\n readonly showClear = input<boolean | undefined>(undefined);\n readonly clearAfterSelect = input<boolean | undefined>(undefined);\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<any>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: any) => void = () => {};\n\n public ngControl = inject(NgControl, { self: true });\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToDropdown() {\n // Object.assign(this.dropdown, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n if (this.pInputs()) {\n this.applyInputsToDropdown();\n }\n }\n\n onValueChange(value: any) {\n this.onModelChange(value);\n this.value.set(value);\n this.onChange.emit(value);\n if (this.clearAfterSelect()) {\n this.clearSelection();\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToDropdown();\n }\n }\n\n writeValue(value: string) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n\n // TODO: make this method work\n public clearSelection() {\n this.dropdown.clear(this.value());\n this.dropdown.value = null;\n this.value.set(null);\n this.onModelChange(null);\n this.onChange.emit(null);\n this.cdr.detectChanges();\n }\n}\n","@if (label()) {\n <label\n (click)=\"dropdown.show(); dropdown.focus()\"\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-select\n appendTo=\"body\"\n [overlayOptions]=\"{ baseZIndex: 1051 }\"\n #dropdown\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [options]=\"options()\"\n [optionLabel]=\"optionLabel()\"\n [optionValue]=\"optionValue()\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [id]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [class.p-invalid]=\"ngControl?.control?.invalid && ngControl?.control?.touched\"\n [class.border-red-500!]=\"\n ngControl?.control?.invalid && ngControl?.control?.touched\n \"\n placeholder=\"{{ hasPlaceholderPrefix() ? 'select' : '' }} {{\n placeholder() ?? label() ?? ''\n }}\"\n [filter]=\"filter()\"\n [filterBy]=\"filterBy()\"\n [dataKey]=\"dataKey()\"\n styleClass=\"w-full\"\n [showClear]=\"showClear()\"\n appendTo=\"body\"\n></p-select>\n@if (ngControl?.control?.invalid && ngControl?.control?.touched) {\n <p-message severity=\"error\" variant=\"simple\" size=\"small\"\n >{{ label() }} is required</p-message\n >\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MAkCa,WAAW,CAAA;AACtB,IAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAE/B,IAAA,QAAQ;AAEC,IAAA,KAAK,GAAG,KAAK,CAAU,IAAI,
|
|
1
|
+
{"version":3,"file":"masterteam-components-select-field.mjs","sources":["../../../../packages/masterteam/components/select-field/select-field.ts","../../../../packages/masterteam/components/select-field/select-field.html","../../../../packages/masterteam/components/select-field/masterteam-components-select-field.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n HostBinding,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n inject,\n ChangeDetectorRef,\n} from '@angular/core';\n\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { Select } from 'primeng/select';\nimport { Message } from 'primeng/message';\n\n@Component({\n selector: 'mt-select-field',\n standalone: true,\n imports: [FormsModule, Select, Message],\n templateUrl: './select-field.html',\n styleUrls: ['./select-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class SelectField implements ControlValueAccessor, OnInit, OnChanges {\n cdr = inject(ChangeDetectorRef);\n @ViewChild('dropdown', { static: true })\n dropdown: Select;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>('');\n readonly placeholder = input<string>('');\n readonly hasPlaceholderPrefix = input<boolean>(true);\n readonly class = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<Select>>();\n readonly options = input<any[] | undefined>(undefined);\n readonly optionValue = input<string | undefined>(undefined);\n readonly optionLabel = input<string | undefined>(undefined);\n readonly filter = input<boolean | undefined>(undefined);\n readonly filterBy = input<string | undefined>(undefined);\n readonly dataKey = input<string | undefined>(undefined);\n readonly showClear = input<boolean | undefined>(undefined);\n readonly clearAfterSelect = input<boolean | undefined>(undefined);\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<any>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: any) => void = () => {};\n\n public ngControl = inject(NgControl, { self: true });\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToDropdown() {\n // Object.assign(this.dropdown, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n if (this.pInputs()) {\n this.applyInputsToDropdown();\n }\n }\n\n onValueChange(value: any) {\n this.onModelChange(value);\n this.value.set(value);\n this.onChange.emit(value);\n if (this.clearAfterSelect()) {\n this.clearSelection();\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToDropdown();\n }\n }\n\n writeValue(value: string) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n\n // TODO: make this method work\n public clearSelection() {\n this.dropdown.clear(this.value());\n this.dropdown.value = null;\n this.value.set(null);\n this.onModelChange(null);\n this.onChange.emit(null);\n this.cdr.detectChanges();\n }\n}\n","@if (label()) {\n <label\n (click)=\"dropdown.show(); dropdown.focus()\"\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n<p-select\n appendTo=\"body\"\n [overlayOptions]=\"{ baseZIndex: 1051 }\"\n #dropdown\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [options]=\"options()\"\n [optionLabel]=\"optionLabel()\"\n [optionValue]=\"optionValue()\"\n (onBlur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [inputId]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [id]=\"ngControl?.name ? ngControl?.name?.toString() : label()\"\n [class.p-invalid]=\"ngControl?.control?.invalid && ngControl?.control?.touched\"\n [class.border-red-500!]=\"\n ngControl?.control?.invalid && ngControl?.control?.touched\n \"\n placeholder=\"{{ hasPlaceholderPrefix() ? 'select' : '' }} {{\n placeholder() ?? label() ?? ''\n }}\"\n [filter]=\"filter()\"\n [filterBy]=\"filterBy()\"\n [dataKey]=\"dataKey()\"\n styleClass=\"w-full\"\n [showClear]=\"showClear()\"\n appendTo=\"body\"\n></p-select>\n@if (ngControl?.control?.invalid && ngControl?.control?.touched) {\n <p-message severity=\"error\" variant=\"simple\" size=\"small\"\n >{{ label() }} is required</p-message\n >\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -7,27 +7,27 @@ import { SliderModule } from 'primeng/slider';
|
|
|
7
7
|
|
|
8
8
|
class SliderField {
|
|
9
9
|
input;
|
|
10
|
-
field = input(true);
|
|
11
|
-
label = input();
|
|
12
|
-
animate = input(true);
|
|
13
|
-
class = input('');
|
|
14
|
-
min = input(0, { transform: numberAttribute });
|
|
15
|
-
max = input(100, { transform: numberAttribute });
|
|
16
|
-
step = input(undefined, {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
hideNumber = input(false, {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
unit = input('');
|
|
23
|
-
readonly = input(false);
|
|
24
|
-
pInputs = input();
|
|
10
|
+
field = input(true, ...(ngDevMode ? [{ debugName: "field" }] : []));
|
|
11
|
+
label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
|
|
12
|
+
animate = input(true, ...(ngDevMode ? [{ debugName: "animate" }] : []));
|
|
13
|
+
class = input('', ...(ngDevMode ? [{ debugName: "class" }] : []));
|
|
14
|
+
min = input(0, ...(ngDevMode ? [{ debugName: "min", transform: numberAttribute }] : [{ transform: numberAttribute }]));
|
|
15
|
+
max = input(100, ...(ngDevMode ? [{ debugName: "max", transform: numberAttribute }] : [{ transform: numberAttribute }]));
|
|
16
|
+
step = input(undefined, ...(ngDevMode ? [{ debugName: "step", transform: numberAttribute }] : [{
|
|
17
|
+
transform: numberAttribute,
|
|
18
|
+
}]));
|
|
19
|
+
hideNumber = input(false, ...(ngDevMode ? [{ debugName: "hideNumber", transform: booleanAttribute }] : [{
|
|
20
|
+
transform: booleanAttribute,
|
|
21
|
+
}]));
|
|
22
|
+
unit = input('', ...(ngDevMode ? [{ debugName: "unit" }] : []));
|
|
23
|
+
readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : []));
|
|
24
|
+
pInputs = input(...(ngDevMode ? [undefined, { debugName: "pInputs" }] : []));
|
|
25
25
|
onChange = new EventEmitter();
|
|
26
26
|
onSlideEnd = new EventEmitter();
|
|
27
27
|
styleClass;
|
|
28
28
|
requiredValidator = Validators.required;
|
|
29
|
-
value = signal(null);
|
|
30
|
-
disabled = signal(false);
|
|
29
|
+
value = signal(null, ...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
30
|
+
disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
31
31
|
onTouched = () => { };
|
|
32
32
|
onModelChange = () => { };
|
|
33
33
|
ngControl = inject(NgControl, { self: true });
|
|
@@ -63,10 +63,10 @@ class SliderField {
|
|
|
63
63
|
setDisabledState(disabled) {
|
|
64
64
|
this.disabled.set(disabled);
|
|
65
65
|
}
|
|
66
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0
|
|
67
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0
|
|
66
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: SliderField, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
67
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.0", type: SliderField, isStandalone: true, selector: "mt-slider-field", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, animate: { classPropertyName: "animate", publicName: "animate", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", 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 }, hideNumber: { classPropertyName: "hideNumber", publicName: "hideNumber", isSignal: true, isRequired: false, transformFunction: null }, unit: { classPropertyName: "unit", publicName: "unit", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onChange: "onChange", onSlideEnd: "onSlideEnd" }, host: { properties: { "class": "this.styleClass" }, classAttribute: "grid gap-1" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n [class.mb-3]=\"hideNumber()\"\n >{{ label() }}</label\n >\n}\n<div\n class=\"flex items-center gap-3 w-full\"\n [style.padding-inline-start]=\"'calc(var(--p-slider-handle-width) / 2)'\"\n>\n <p-slider\n #input\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onChange)=\"onChange.emit($event)\"\n (onSlideEnd)=\"onSlideEnd.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [animate]=\"animate()\"\n [id]=\"ngControl?.name || label()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [step]=\"step()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n class=\"grow\"\n ></p-slider>\n @if (!hideNumber()) {\n <span class=\"leading-none\">{{ value() ? value() + unit() : \"-\" }}</span>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SliderModule }, { kind: "component", type: i2.Slider, selector: "p-slider", inputs: ["animate", "min", "max", "orientation", "step", "range", "styleClass", "ariaLabel", "ariaLabelledBy", "tabindex", "autofocus"], outputs: ["onChange", "onSlideEnd"] }] });
|
|
68
68
|
}
|
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: SliderField, decorators: [{
|
|
70
70
|
type: Component,
|
|
71
71
|
args: [{ selector: 'mt-slider-field', standalone: true, imports: [FormsModule, SliderModule], host: {
|
|
72
72
|
class: 'grid gap-1',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-slider-field.mjs","sources":["../../../../packages/masterteam/components/slider-field/slider-field.ts","../../../../packages/masterteam/components/slider-field/slider-field.html","../../../../packages/masterteam/components/slider-field/masterteam-components-slider-field.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n HostBinding,\n Output,\n SimpleChanges,\n ViewChild,\n booleanAttribute,\n input,\n numberAttribute,\n signal,\n OnInit,\n OnChanges,\n inject,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport {\n Slider,\n SliderChangeEvent,\n SliderSlideEndEvent,\n SliderModule,\n} from 'primeng/slider';\n\n@Component({\n selector: 'mt-slider-field',\n standalone: true,\n imports: [FormsModule, SliderModule],\n templateUrl: './slider-field.html',\n styleUrls: ['./slider-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class SliderField implements ControlValueAccessor, OnInit, OnChanges {\n @ViewChild('input', { static: true })\n input: Slider;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>();\n readonly animate = input<boolean>(true);\n readonly class = input<string>('');\n readonly min = input<number, unknown>(0, { transform: numberAttribute });\n readonly max = input<number, unknown>(100, { transform: numberAttribute });\n readonly step = input<number, unknown>(undefined, {\n transform: numberAttribute,\n });\n readonly hideNumber = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly unit = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<Slider>>();\n @Output() onChange: EventEmitter<SliderChangeEvent> = new EventEmitter();\n @Output() onSlideEnd: EventEmitter<SliderSlideEndEvent> = new EventEmitter();\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<number | null>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: number | null) => void = () => {};\n\n public ngControl = inject(NgControl, { self: true });\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToInput() {\n Object.assign(this.input, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n }\n onValueChange(value: number | null) {\n this.onModelChange(value);\n this.value.set(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToInput();\n }\n }\n\n writeValue(value: number) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n [class.mb-3]=\"hideNumber()\"\n >{{ label() }}</label\n >\n}\n<div\n class=\"flex items-center gap-3 w-full\"\n [style.padding-inline-start]=\"'calc(var(--p-slider-handle-width) / 2)'\"\n>\n <p-slider\n #input\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onChange)=\"onChange.emit($event)\"\n (onSlideEnd)=\"onSlideEnd.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [animate]=\"animate()\"\n [id]=\"ngControl?.name || label()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [step]=\"step()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n class=\"grow\"\n ></p-slider>\n @if (!hideNumber()) {\n <span class=\"leading-none\">{{ value() ? value() + unit() : \"-\" }}</span>\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MAsCa,WAAW,CAAA;AAEtB,IAAA,KAAK;AAEI,IAAA,KAAK,GAAG,KAAK,CAAU,IAAI,
|
|
1
|
+
{"version":3,"file":"masterteam-components-slider-field.mjs","sources":["../../../../packages/masterteam/components/slider-field/slider-field.ts","../../../../packages/masterteam/components/slider-field/slider-field.html","../../../../packages/masterteam/components/slider-field/masterteam-components-slider-field.ts"],"sourcesContent":["import {\n Component,\n EventEmitter,\n HostBinding,\n Output,\n SimpleChanges,\n ViewChild,\n booleanAttribute,\n input,\n numberAttribute,\n signal,\n OnInit,\n OnChanges,\n inject,\n} from '@angular/core';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport {\n Slider,\n SliderChangeEvent,\n SliderSlideEndEvent,\n SliderModule,\n} from 'primeng/slider';\n\n@Component({\n selector: 'mt-slider-field',\n standalone: true,\n imports: [FormsModule, SliderModule],\n templateUrl: './slider-field.html',\n styleUrls: ['./slider-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class SliderField implements ControlValueAccessor, OnInit, OnChanges {\n @ViewChild('input', { static: true })\n input: Slider;\n\n readonly field = input<boolean>(true);\n readonly label = input<string>();\n readonly animate = input<boolean>(true);\n readonly class = input<string>('');\n readonly min = input<number, unknown>(0, { transform: numberAttribute });\n readonly max = input<number, unknown>(100, { transform: numberAttribute });\n readonly step = input<number, unknown>(undefined, {\n transform: numberAttribute,\n });\n readonly hideNumber = input<boolean, unknown>(false, {\n transform: booleanAttribute,\n });\n readonly unit = input<string>('');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<Slider>>();\n @Output() onChange: EventEmitter<SliderChangeEvent> = new EventEmitter();\n @Output() onSlideEnd: EventEmitter<SliderSlideEndEvent> = new EventEmitter();\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<number | null>(null);\n disabled = signal<boolean>(false);\n\n onTouched: () => void = () => {};\n onModelChange: (value: number | null) => void = () => {};\n\n public ngControl = inject(NgControl, { self: true });\n\n constructor() {\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n applyInputsToInput() {\n Object.assign(this.input, this.pInputs());\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n }\n onValueChange(value: number | null) {\n this.onModelChange(value);\n this.value.set(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToInput();\n }\n }\n\n writeValue(value: number) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n [class.mb-3]=\"hideNumber()\"\n >{{ label() }}</label\n >\n}\n<div\n class=\"flex items-center gap-3 w-full\"\n [style.padding-inline-start]=\"'calc(var(--p-slider-handle-width) / 2)'\"\n>\n <p-slider\n #input\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n (onChange)=\"onChange.emit($event)\"\n (onSlideEnd)=\"onSlideEnd.emit($event)\"\n (blur)=\"onTouched()\"\n [disabled]=\"disabled() || readonly()\"\n [animate]=\"animate()\"\n [id]=\"ngControl?.name || label()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [step]=\"step()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n class=\"grow\"\n ></p-slider>\n @if (!hideNumber()) {\n <span class=\"leading-none\">{{ value() ? value() + unit() : \"-\" }}</span>\n }\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -18,20 +18,20 @@ import { Icon } from '@masterteam/icons';
|
|
|
18
18
|
// TODO: text stuck when reset
|
|
19
19
|
class TextField {
|
|
20
20
|
inputText;
|
|
21
|
-
field = input(true);
|
|
22
|
-
hint = input();
|
|
23
|
-
label = input();
|
|
24
|
-
placeholder = input();
|
|
25
|
-
class = input('');
|
|
26
|
-
type = input('text');
|
|
27
|
-
readonly = input(false);
|
|
28
|
-
pInputs = input();
|
|
29
|
-
pKeyFilter = input();
|
|
21
|
+
field = input(true, ...(ngDevMode ? [{ debugName: "field" }] : []));
|
|
22
|
+
hint = input(...(ngDevMode ? [undefined, { debugName: "hint" }] : []));
|
|
23
|
+
label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
|
|
24
|
+
placeholder = input(...(ngDevMode ? [undefined, { debugName: "placeholder" }] : []));
|
|
25
|
+
class = input('', ...(ngDevMode ? [{ debugName: "class" }] : []));
|
|
26
|
+
type = input('text', ...(ngDevMode ? [{ debugName: "type" }] : []));
|
|
27
|
+
readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : []));
|
|
28
|
+
pInputs = input(...(ngDevMode ? [undefined, { debugName: "pInputs" }] : []));
|
|
29
|
+
pKeyFilter = input(...(ngDevMode ? [undefined, { debugName: "pKeyFilter" }] : []));
|
|
30
30
|
// readonly externalControl = input<any>(null);
|
|
31
31
|
styleClass;
|
|
32
32
|
requiredValidator = Validators.required;
|
|
33
|
-
value = signal(null);
|
|
34
|
-
disabled = signal(false);
|
|
33
|
+
value = signal(null, ...(ngDevMode ? [{ debugName: "value" }] : []));
|
|
34
|
+
disabled = signal(false, ...(ngDevMode ? [{ debugName: "disabled" }] : []));
|
|
35
35
|
alphaNum = /[\u0621-\u064A\u0660-\u0669a-z0-9\s]/i;
|
|
36
36
|
onTouched = () => { };
|
|
37
37
|
onModelChange = () => { };
|
|
@@ -84,10 +84,10 @@ class TextField {
|
|
|
84
84
|
setDisabledState(disabled) {
|
|
85
85
|
this.disabled.set(disabled);
|
|
86
86
|
}
|
|
87
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0
|
|
88
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0
|
|
87
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: TextField, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
88
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.0", type: TextField, isStandalone: true, selector: "mt-text-field", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, pInputs: { classPropertyName: "pInputs", publicName: "pInputs", isSignal: true, isRequired: false, transformFunction: null }, pKeyFilter: { classPropertyName: "pKeyFilter", publicName: "pKeyFilter", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "this.styleClass" }, classAttribute: "grid gap-1" }, viewQueries: [{ propertyName: "inputText", first: true, predicate: ["inputText"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n@if (!hint()) {\n @if (!pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n />\n }\n @if (pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n [pKeyFilter]=\"pKeyFilter() === 'alphanum' ? alphaNum : pKeyFilter()\"\n />\n }\n} @else {\n <p-inputgroup>\n @if (!pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n />\n }\n @if (pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n [pKeyFilter]=\"pKeyFilter() === 'alphanum' ? alphaNum : pKeyFilter()\"\n />\n }\n <p-inputgroup-addon [pTooltip]=\"hint()\" tooltipPosition=\"top\">\n <mt-icon icon=\"general.help-circle\" />\n </p-inputgroup-addon>\n </p-inputgroup>\n}\n\n<mt-field-validation [control]=\"ngControl?.control!\"></mt-field-validation>\n", styles: [""], dependencies: [{ 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i2.InputText, selector: "[pInputText]", inputs: ["pSize", "variant", "fluid", "invalid"] }, { kind: "ngmodule", type: KeyFilterModule }, { kind: "directive", type: i3.KeyFilter, selector: "[pKeyFilter]", inputs: ["pValidateOnly", "pKeyFilter"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "ngmodule", type: InputGroupModule }, { kind: "component", type: i5.InputGroup, selector: "p-inputgroup, p-inputGroup, p-input-group", inputs: ["styleClass"] }, { kind: "ngmodule", type: InputGroupAddonModule }, { kind: "component", type: i6.InputGroupAddon, selector: "p-inputgroup-addon, p-inputGroupAddon", inputs: ["style", "styleClass"] }, { kind: "component", type: FieldValidation, selector: "mt-field-validation", inputs: ["control", "touched", "customErrorClass"] }, { kind: "component", type: Icon, selector: "mt-icon", inputs: ["icon"] }] });
|
|
89
89
|
}
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: TextField, decorators: [{
|
|
91
91
|
type: Component,
|
|
92
92
|
args: [{ selector: 'mt-text-field', standalone: true, imports: [
|
|
93
93
|
FormsModule,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"masterteam-components-text-field.mjs","sources":["../../../../packages/masterteam/components/text-field/text-field.ts","../../../../packages/masterteam/components/text-field/text-field.html","../../../../packages/masterteam/components/text-field/masterteam-components-text-field.ts"],"sourcesContent":["import {\n Component,\n HostBinding,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n OnInit,\n OnChanges,\n inject,\n} from '@angular/core';\nimport { InputTextModule } from 'primeng/inputtext';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { KeyFilterModule, KeyFilterPattern } from 'primeng/keyfilter';\nimport { InputGroupModule } from 'primeng/inputgroup';\nimport { InputGroupAddonModule } from 'primeng/inputgroupaddon';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { FieldValidation } from '@masterteam/components/field-validation';\nimport { Icon } from '@masterteam/icons';\n\n// TODO: text stuck when reset\n@Component({\n selector: 'mt-text-field',\n standalone: true,\n imports: [\n FormsModule,\n InputTextModule,\n KeyFilterModule,\n TooltipModule,\n InputGroupModule,\n InputGroupAddonModule,\n FieldValidation,\n Icon,\n ],\n templateUrl: './text-field.html',\n styleUrls: ['./text-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class TextField implements ControlValueAccessor, OnInit, OnChanges {\n @ViewChild('inputText', { static: true })\n inputText: HTMLInputElement;\n\n readonly field = input<boolean>(true);\n readonly hint = input<string>();\n readonly label = input<string>();\n readonly placeholder = input<string>();\n readonly class = input<string>('');\n readonly type = input<string>('text');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<HTMLInputElement>>();\n readonly pKeyFilter = input<KeyFilterPattern | RegExp>();\n // readonly externalControl = input<any>(null);\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<string | null>(null);\n disabled = signal<boolean>(false);\n\n alphaNum: RegExp = /[\\u0621-\\u064A\\u0660-\\u0669a-z0-9\\s]/i;\n\n onTouched: () => void = () => {};\n onModelChange: (value: any) => void = () => {};\n\n public ngControl: NgControl | null = null;\n\n constructor() {\n try {\n // Try to inject NgControl if available\n this.ngControl = inject(NgControl, { self: true, optional: true });\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n } catch (_e) {\n // If injection fails, ngControl will remain null\n this.ngControl = null;\n }\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n // if (this.externalControl()) {\n // debugger\n // this.ngControl = this.externalControl();\n // }\n\n if (this.pInputs()) {\n this.applyInputsToInputText();\n }\n }\n\n applyInputsToInputText() {\n Object.assign(this.inputText, this.pInputs());\n }\n\n onValueChange(value: any) {\n this.onModelChange(value);\n this.onTouched();\n this.value.set(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToInputText();\n }\n }\n\n writeValue(value: string) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n@if (!hint()) {\n @if (!pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n />\n }\n @if (pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n [pKeyFilter]=\"pKeyFilter() === 'alphanum' ? alphaNum : pKeyFilter()\"\n />\n }\n} @else {\n <p-inputgroup>\n @if (!pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n />\n }\n @if (pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n [pKeyFilter]=\"pKeyFilter() === 'alphanum' ? alphaNum : pKeyFilter()\"\n />\n }\n <p-inputgroup-addon [pTooltip]=\"hint()\" tooltipPosition=\"top\">\n <mt-icon icon=\"general.help-circle\" />\n </p-inputgroup-addon>\n </p-inputgroup>\n}\n\n<mt-field-validation [control]=\"ngControl?.control!\"></mt-field-validation>\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":"masterteam-components-text-field.mjs","sources":["../../../../packages/masterteam/components/text-field/text-field.ts","../../../../packages/masterteam/components/text-field/text-field.html","../../../../packages/masterteam/components/text-field/masterteam-components-text-field.ts"],"sourcesContent":["import {\n Component,\n HostBinding,\n SimpleChanges,\n ViewChild,\n signal,\n input,\n OnInit,\n OnChanges,\n inject,\n} from '@angular/core';\nimport { InputTextModule } from 'primeng/inputtext';\nimport {\n ControlValueAccessor,\n FormsModule,\n NgControl,\n Validators,\n} from '@angular/forms';\nimport { KeyFilterModule, KeyFilterPattern } from 'primeng/keyfilter';\nimport { InputGroupModule } from 'primeng/inputgroup';\nimport { InputGroupAddonModule } from 'primeng/inputgroupaddon';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { FieldValidation } from '@masterteam/components/field-validation';\nimport { Icon } from '@masterteam/icons';\n\n// TODO: text stuck when reset\n@Component({\n selector: 'mt-text-field',\n standalone: true,\n imports: [\n FormsModule,\n InputTextModule,\n KeyFilterModule,\n TooltipModule,\n InputGroupModule,\n InputGroupAddonModule,\n FieldValidation,\n Icon,\n ],\n templateUrl: './text-field.html',\n styleUrls: ['./text-field.scss'],\n host: {\n class: 'grid gap-1',\n },\n})\nexport class TextField implements ControlValueAccessor, OnInit, OnChanges {\n @ViewChild('inputText', { static: true })\n inputText: HTMLInputElement;\n\n readonly field = input<boolean>(true);\n readonly hint = input<string>();\n readonly label = input<string>();\n readonly placeholder = input<string>();\n readonly class = input<string>('');\n readonly type = input<string>('text');\n readonly readonly = input<boolean>(false);\n readonly pInputs = input<Partial<HTMLInputElement>>();\n readonly pKeyFilter = input<KeyFilterPattern | RegExp>();\n // readonly externalControl = input<any>(null);\n\n @HostBinding('class') styleClass: string;\n\n requiredValidator = Validators.required;\n value = signal<string | null>(null);\n disabled = signal<boolean>(false);\n\n alphaNum: RegExp = /[\\u0621-\\u064A\\u0660-\\u0669a-z0-9\\s]/i;\n\n onTouched: () => void = () => {};\n onModelChange: (value: any) => void = () => {};\n\n public ngControl: NgControl | null = null;\n\n constructor() {\n try {\n // Try to inject NgControl if available\n this.ngControl = inject(NgControl, { self: true, optional: true });\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n } catch (_e) {\n // If injection fails, ngControl will remain null\n this.ngControl = null;\n }\n }\n\n ngOnInit() {\n this.styleClass = this.class();\n // if (this.externalControl()) {\n // debugger\n // this.ngControl = this.externalControl();\n // }\n\n if (this.pInputs()) {\n this.applyInputsToInputText();\n }\n }\n\n applyInputsToInputText() {\n Object.assign(this.inputText, this.pInputs());\n }\n\n onValueChange(value: any) {\n this.onModelChange(value);\n this.onTouched();\n this.value.set(value);\n }\n ngOnChanges(changes: SimpleChanges) {\n if (changes['pInputs']) {\n this.applyInputsToInputText();\n }\n }\n\n writeValue(value: string) {\n this.value.set(value);\n }\n\n registerOnChange(fn: any) {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: any) {\n this.onTouched = fn;\n }\n\n setDisabledState(disabled: boolean) {\n this.disabled.set(disabled);\n }\n}\n","@if (label()) {\n <label\n [class.required]=\"ngControl?.control?.hasValidator(requiredValidator)\"\n [for]=\"ngControl?.name || label()\"\n >{{ label() }}</label\n >\n}\n@if (!hint()) {\n @if (!pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n />\n }\n @if (pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n [pKeyFilter]=\"pKeyFilter() === 'alphanum' ? alphaNum : pKeyFilter()\"\n />\n }\n} @else {\n <p-inputgroup>\n @if (!pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n />\n }\n @if (pKeyFilter()) {\n <input\n #inputText=\"\"\n pInputText=\"\"\n [ngModel]=\"value()\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"disabled() || readonly()\"\n [type]=\"type()\"\n [id]=\"ngControl?.name || label()\"\n [class.ng-invalid]=\"ngControl?.control?.invalid\"\n placeholder=\"{{ placeholder() ?? label() ?? '' }}\"\n class=\"w-full\"\n [pKeyFilter]=\"pKeyFilter() === 'alphanum' ? alphaNum : pKeyFilter()\"\n />\n }\n <p-inputgroup-addon [pTooltip]=\"hint()\" tooltipPosition=\"top\">\n <mt-icon icon=\"general.help-circle\" />\n </p-inputgroup-addon>\n </p-inputgroup>\n}\n\n<mt-field-validation [control]=\"ngControl?.control!\"></mt-field-validation>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAyBA;MAoBa,SAAS,CAAA;AAEpB,IAAA,SAAS;AAEA,IAAA,KAAK,GAAG,KAAK,CAAU,IAAI,iDAAC;IAC5B,IAAI,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;IACtB,KAAK,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;IACvB,WAAW,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAU;AAC7B,IAAA,KAAK,GAAG,KAAK,CAAS,EAAE,iDAAC;AACzB,IAAA,IAAI,GAAG,KAAK,CAAS,MAAM,gDAAC;AAC5B,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,oDAAC;IAChC,OAAO,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,SAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAA6B;IAC5C,UAAU,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,YAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAA6B;;AAGlC,IAAA,UAAU;AAEhC,IAAA,iBAAiB,GAAG,UAAU,CAAC,QAAQ;AACvC,IAAA,KAAK,GAAG,MAAM,CAAgB,IAAI,iDAAC;AACnC,IAAA,QAAQ,GAAG,MAAM,CAAU,KAAK,oDAAC;IAEjC,QAAQ,GAAW,uCAAuC;AAE1D,IAAA,SAAS,GAAe,MAAK,EAAE,CAAC;AAChC,IAAA,aAAa,GAAyB,MAAK,EAAE,CAAC;IAEvC,SAAS,GAAqB,IAAI;AAEzC,IAAA,WAAA,GAAA;AACE,QAAA,IAAI;;AAEF,YAAA,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAClE,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,gBAAA,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI;YACrC;QACF;QAAE,OAAO,EAAE,EAAE;;AAEX,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;QACvB;IACF;IAEA,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;;;;;AAM9B,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;YAClB,IAAI,CAAC,sBAAsB,EAAE;QAC/B;IACF;IAEA,sBAAsB,GAAA;AACpB,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/C;AAEA,IAAA,aAAa,CAAC,KAAU,EAAA;AACtB,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;IACvB;AACA,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;YACtB,IAAI,CAAC,sBAAsB,EAAE;QAC/B;IACF;AAEA,IAAA,UAAU,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;IACvB;AAEA,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACtB,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE;IACzB;AAEA,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,QAAiB,EAAA;AAChC,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC7B;uGAlFW,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAT,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,SAAS,s5CC7CtB,g3EA2EA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED7CI,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACX,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,aAAa,qXACb,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAChB,qBAAqB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,uCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACrB,eAAe,oHACf,IAAI,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAQK,SAAS,EAAA,UAAA,EAAA,CAAA;kBAnBrB,SAAS;+BACE,eAAe,EAAA,UAAA,EACb,IAAI,EAAA,OAAA,EACP;wBACP,WAAW;wBACX,eAAe;wBACf,eAAe;wBACf,aAAa;wBACb,gBAAgB;wBAChB,qBAAqB;wBACrB,eAAe;wBACf,IAAI;qBACL,EAAA,IAAA,EAGK;AACJ,wBAAA,KAAK,EAAE,YAAY;AACpB,qBAAA,EAAA,QAAA,EAAA,g3EAAA,EAAA;wDAID,SAAS,EAAA,CAAA;sBADR,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAclB,UAAU,EAAA,CAAA;sBAA/B,WAAW;uBAAC,OAAO;;;AE5DtB;;AAEG;;;;"}
|