@esfaenza/parameters 20.3.56 → 20.3.57

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.
@@ -26,10 +26,10 @@ class EsParametersLoc extends LocalizationService {
26
26
  super.set("it->en", "Aggiungi", ["Add"]);
27
27
  super.set("it->en", "Rimuovi", ["Remove"]);
28
28
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersLoc, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
30
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersLoc }); }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersLoc, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
30
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersLoc }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersLoc, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersLoc, decorators: [{
33
33
  type: Injectable
34
34
  }], ctorParameters: () => [{ type: i0.Injector }] });
35
35
 
@@ -85,10 +85,10 @@ class ParameterTypeDirective {
85
85
  constructor(templateRef) {
86
86
  this.templateRef = templateRef;
87
87
  }
88
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: ParameterTypeDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
89
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.31", type: ParameterTypeDirective, isStandalone: false, selector: "[parameterType]", inputs: { parameterType: "parameterType" }, ngImport: i0 }); }
88
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: ParameterTypeDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
89
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.32", type: ParameterTypeDirective, isStandalone: false, selector: "[parameterType]", inputs: { parameterType: "parameterType" }, ngImport: i0 }); }
90
90
  }
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: ParameterTypeDirective, decorators: [{
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: ParameterTypeDirective, decorators: [{
92
92
  type: Directive,
93
93
  args: [{
94
94
  selector: "[parameterType]",
@@ -800,8 +800,8 @@ class EsParametersComponent {
800
800
  onInputFinalized(parameter) {
801
801
  this.inputFinalized.emit(parameter);
802
802
  }
803
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersComponent, deps: [{ token: i1.UtilityService }, { token: i2.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i1.DateService }], target: i0.ɵɵFactoryTarget.Component }); }
804
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.31", type: EsParametersComponent, isStandalone: false, selector: "es-parameters", inputs: { ParentCustomTemplates: "ParentCustomTemplates", NamePrefix: "NamePrefix", BooleanSliderMode: "BooleanSliderMode", DisplayMode: "DisplayMode", HideEmpty: "HideEmpty", LastParameterNoMargin: "LastParameterNoMargin", LabelColWidth: "LabelColWidth", InputColWidth: "InputColWidth", LabelFixedWidth: "LabelFixedWidth", LabelAutoWidth: "LabelAutoWidth", ModernStyles: "ModernStyles", submitted: "submitted", RepeaterAddRemoveServerSide: "RepeaterAddRemoveServerSide", RepeaterAddRemove: "RepeaterAddRemove", EmptyMessage: "EmptyMessage", Removal: "Removal", Readonly: "Readonly", ListFormat: "ListFormat", FileMode: "FileMode", Form: "Form", AutocompleteHideChoicesOnSelection: "AutocompleteHideChoicesOnSelection", AutoCompleteDataRetrieve: "AutoCompleteDataRetrieve", MultiselectMode: "MultiselectMode", LabelInputRatio: "LabelInputRatio" }, outputs: { inputFinalized: "inputFinalized" }, providers: [
803
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersComponent, deps: [{ token: i1.UtilityService }, { token: i2.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i1.DateService }], target: i0.ɵɵFactoryTarget.Component }); }
804
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.32", type: EsParametersComponent, isStandalone: false, selector: "es-parameters", inputs: { ParentCustomTemplates: "ParentCustomTemplates", NamePrefix: "NamePrefix", BooleanSliderMode: "BooleanSliderMode", DisplayMode: "DisplayMode", HideEmpty: "HideEmpty", LastParameterNoMargin: "LastParameterNoMargin", LabelColWidth: "LabelColWidth", InputColWidth: "InputColWidth", LabelFixedWidth: "LabelFixedWidth", LabelAutoWidth: "LabelAutoWidth", ModernStyles: "ModernStyles", submitted: "submitted", RepeaterAddRemoveServerSide: "RepeaterAddRemoveServerSide", RepeaterAddRemove: "RepeaterAddRemove", EmptyMessage: "EmptyMessage", Removal: "Removal", Readonly: "Readonly", ListFormat: "ListFormat", FileMode: "FileMode", Form: "Form", AutocompleteHideChoicesOnSelection: "AutocompleteHideChoicesOnSelection", AutoCompleteDataRetrieve: "AutoCompleteDataRetrieve", MultiselectMode: "MultiselectMode", LabelInputRatio: "LabelInputRatio" }, outputs: { inputFinalized: "inputFinalized" }, providers: [
805
805
  { provide: LocalizationService, useClass: EsParametersLoc },
806
806
  {
807
807
  provide: NG_VALUE_ACCESSOR,
@@ -810,7 +810,7 @@ class EsParametersComponent {
810
810
  }
811
811
  ], queries: [{ propertyName: "CustomTemplateDirectives", predicate: ParameterTypeDirective }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"(!Parameters || Parameters.length == 0) && EmptyMessage\">\r\n <em>{{EmptyMessage}}</em>\r\n</div>\r\n\r\n<div *ngIf=\"Groups && Initialized\" class=\"row\" [class.pars-modern]=\"ModernStyles\">\r\n <ng-container *ngTemplateOutlet=\"Temp; context: {item: { groups: Groups, isSubgroup: false, index: NamePrefix }}\"></ng-container>\r\n</div>\r\n\r\n<ng-template #Temp let-item=\"item\">\r\n <ng-container *ngFor=\"let group of item.groups; let k = index\">\r\n <div [class.pars-subgroup]=\"item.isSubgroup\" [class.pars-group]=\"!item.isSubgroup\" class=\"col-md-{{group.size ?? 12}}\">\r\n <div [class.pars-group-box]=\"group.groupName\">\r\n <ng-container *ngTemplateOutlet=\"GroupsOrSubgroupsDisplay; context: { item: { group: group, index: k + (item.index ? ('_' + item.index) : ''), isSubgroup: item.isSubgroup }}\"></ng-container>\r\n <ng-container *ngIf=\"group.subgroups.length > 0\">\r\n <ng-container *ngTemplateOutlet=\"Temp; context: {item: { groups: group.subgroups, index: k + (item.index ? ('_' + item.index) : ''), isSubgroup: true }};\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #GroupsOrSubgroupsDisplay let-item=\"item\">\r\n @if(item.group && Initialized){\r\n\r\n <div *ngIf=\"item.group.groupName\" [style.margin-left.px]=\"ModernStyles ? 0 : -15\" [style.margin-right.px]=\"ModernStyles ? 0 : -15\" [class.pars-group-title]=\"!item.isSubgroup\" [class.pars-subgroup-title]=\"item.isSubgroup\">{{item.group.groupName}}</div>\r\n <div *ngIf=\"item.group.parameters && item.group.parameters.length > 0\" class=\"row\">\r\n @for (par of item.group.parameters; track $index; let i = $index; let last = $last) {\r\n\r\n @if (!DisplayMode || !HideEmpty || par.value) {\r\n\r\n @if (par.visible) {\r\n\r\n <div class=\"row form-group\" [class.app-margin-bottom-0]=\"LastParameterNoMargin && last\" [class.pars-fixed-label]=\"EffectiveLabelWidth\" [style.--pars-label-width]=\"EffectiveLabelWidth ? EffectiveLabelWidth + 'px' : null\" class=\"col-md-{{par.parametersize ?? 12}}\" >\r\n\r\n @if(par.type != 'text' && par.type != 'repeater'){\r\n <label class=\"col-md-{{LabelColWidth}} m-t-5\">\r\n @if (Removal) {\r\n <span class=\"fa fa-remove text-danger\" (click)=\"removeParameter(par)\">&nbsp;</span>\r\n }\r\n {{ par.description }}{{ par.required ? '*' : '' }}:\r\n </label>\r\n }\r\n @switch (par.type) {\r\n\r\n @case ('date') {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-date [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator>\r\n </form-date>\r\n </div>\r\n }\r\n\r\n @case ('datetime') {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-date [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator>\r\n </form-date>\r\n </div>\r\n }\r\n\r\n @case ('string') {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <!--Il pattern arriva dal parametro (es. i campi di formato Email). Quando non c'e',\r\n l'interpolazione da stringa vuota, che per Angular vale come nessuna validazione.-->\r\n <form-input [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator pattern=\"{{par.pattern}}\">\r\n </form-input>\r\n </div>\r\n }\r\n\r\n @case ('number') {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-input [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator pattern=\"{{par.pattern || '^[+-]?[0-9]*[,]?[0-9]+$'}}\">\r\n </form-input>\r\n </div>\r\n }\r\n\r\n @case ('integer') {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-input [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator pattern=\"{{par.pattern || '^[+-]?[0-9]+$'}}\">\r\n </form-input>\r\n </div>\r\n }\r\n\r\n @case ('boolean') {\r\n <div class=\"col-md-{{InputColWidth}} m-t-5\">\r\n <form-checkbox [SliderMode]=\"BooleanSliderMode\" [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\" \r\n (inputChange)=\"evaluateRadioButtons(par); changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator>\r\n </form-checkbox>\r\n </div>\r\n }\r\n\r\n @case ('text') {\r\n <div class=\"col-md-12 m-t-5\">\r\n <form-info [LabelInputRatio]=\"'0 12'\"><span style=\"font-size: 16px;\">{{par.value}}</span></form-info>\r\n </div>\r\n }\r\n\r\n @case ('enum') {\r\n @if (!par.sourceapi) {\r\n\r\n @if (!par.multienum) {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-select [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator [Source]=\"par.enumvalues\">\r\n </form-select>\r\n </div>\r\n }\r\n @else {\r\n\r\n @if (par.enumvalues) {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-multiselect [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [InOutFormat]=\"MultiselectMode == 'JsonArray'\r\n ? 'JsonList'\r\n : MultiselectMode == 'CommaSeparated'\r\n ? 'CommaSeparatedList'\r\n : 'List'\" [Placeholder]=\"('Seleziona' | localize : lc) + '...'\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\" [disabled]=\"Readonly || par.isreadonly\"\r\n [Source]=\"par.enumvalues\" [required]=\"par.required\" (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator>\r\n </form-multiselect>\r\n </div>\r\n }\r\n @else {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-autocomplete [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [Placeholder]=\"('Seleziona' | localize : lc) + '...'\" multiple forceSelection [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator>\r\n </form-autocomplete>\r\n </div>\r\n }\r\n }\r\n } @else {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <form-autocomplete [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [FormLayout]=\"false\" [(ngModel)]=\"par.value\" name=\"{{item.index}}par{{i}}_{{par.id}}\" [multiple]=\"par.multienum\" [disabled]=\"Readonly || par.isreadonly\"\r\n [SearchFunction]=\"getSource.bind(this, par)\" [required]=\"par.required\" (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\" #validator>\r\n </form-autocomplete>\r\n </div>\r\n }\r\n }\r\n\r\n @case ('file') {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <!--Con isfilemultiple si abilita la selezione multipla e si attiva la FancyMode, piu leggibile con piu file.\r\n Il modello resta un singolo AppFile: i singoli file (e i relativi b64) stanno dentro AppFile.files-->\r\n <form-file [DisplayMode]=\"DisplayMode\" [Form]=\"Form\" [ReadFile]=\"true\" [FormLayout]=\"false\" [disabled]=\"Readonly || par.isreadonly\" [required]=\"par.required\" [(ngModel)]=\"par.file\" name=\"{{item.index}}par{{i}}_{{par.id}}\"\r\n [Multiple]=\"!!par.isfilemultiple\" [AdditiveMode]=\"FileMode === 'Additive'\" \r\n #validator (inputChange)=\"changed();\" (inputFinalized)=\"onInputFinalized(par);\">\r\n </form-file>\r\n </div>\r\n }\r\n\r\n @case ('repeater') {\r\n <div class=\"col-md-12 pars-repeater\">\r\n @if (par.description) {\r\n <div class=\"pars-subgroup-title\">{{ par.description }}{{ par.required ? '*' : '' }}</div>\r\n }\r\n\r\n @for (item_rep of par.value; track $index; let j = $index) {\r\n <div class=\"pars-subgroup pars-repeater-item\">\r\n @if (!DisplayMode && !Readonly && !par.isreadonly && canDeleteRepeaterItem(item_rep)) {\r\n <div class=\"pars-repeater-item-header\">\r\n <button type=\"button\" class=\"btn pars-repeater-remove\" [class.btn-danger]=\"!ModernStyles\" (click)=\"removeRepeaterItem(par, j)\">\r\n <span class=\"fa fa-remove\">&nbsp;</span><span>{{ 'Rimuovi' | localize : lc }}</span>\r\n </button>\r\n </div>\r\n }\r\n <es-parameters [(ngModel)]=\"par.value[j]\" name=\"{{item.index}}par{{i}}_{{par.id}}_rep{{j}}\" [ngModelOptions]=\"{ standalone: true }\"\r\n [NamePrefix]=\"NamePrefix + par.id + '_' + j + '_'\"\r\n [Form]=\"Form\" [DisplayMode]=\"DisplayMode\" [Readonly]=\"Readonly || par.isreadonly\"\r\n [ListFormat]=\"ListFormat\" [MultiselectMode]=\"MultiselectMode\" [RepeaterAddRemoveServerSide]=\"RepeaterAddRemoveServerSide\"\r\n [LabelColWidth]=\"LabelColWidth\" [InputColWidth]=\"InputColWidth\" [RepeaterAddRemove]=\"RepeaterAddRemove\"\r\n [BooleanSliderMode]=\"BooleanSliderMode\" [AutocompleteHideChoicesOnSelection]=\"AutocompleteHideChoicesOnSelection\"\r\n [AutoCompleteDataRetrieve]=\"AutoCompleteDataRetrieve\" [ParentCustomTemplates]=\"MergedCustomTemplates\"\r\n [ModernStyles]=\"ModernStyles\" [LabelFixedWidth]=\"LabelFixedWidth\" [LabelAutoWidth]=\"LabelAutoWidth\" [FileMode]=\"FileMode\"\r\n (ngModelChange)=\"changed();\" (inputFinalized)=\"onInputFinalized($event);\">\r\n </es-parameters>\r\n </div>\r\n }\r\n\r\n @if (!DisplayMode && !Readonly && !par.isreadonly && canAddRepeaterItem(par)) {\r\n <button type=\"button\" class=\"btn pars-repeater-add\" [class.btn-primary]=\"!ModernStyles\" (click)=\"addRepeaterItem(par)\">\r\n <span class=\"fa fa-plus\">&nbsp;</span><span>{{ 'Aggiungi' | localize : lc }}</span>\r\n </button>\r\n }\r\n </div>\r\n }\r\n\r\n @default {\r\n @if (getCustomTemplate(par.type)) {\r\n <div class=\"col-md-{{InputColWidth}}\">\r\n <ng-container *ngTemplateOutlet=\"getCustomTemplate(par.type); context: {\r\n $implicit: par,\r\n par: par,\r\n changed: boundChanged,\r\n finalized: boundFinalized,\r\n Form: Form,\r\n DisplayMode: DisplayMode,\r\n Readonly: Readonly,\r\n InputColWidth: InputColWidth,\r\n index: item.index\r\n }\"></ng-container>\r\n </div>\r\n }\r\n }\r\n }\r\n\r\n </div>\r\n <div class=\"clearfix\"></div>\r\n }\r\n }\r\n }\r\n <div *ngIf=\"DisplayMode && AllParametersEmpty && HideEmpty\" class=\"card card-info app-padding-10 app-no-margin app-white-text\">\r\n Non &egrave; presente nulla da visualizzare\r\n </div>\r\n </div>\r\n }\r\n</ng-template>", styles: ["@charset \"UTF-8\";.list-area{position:fixed}.pars-group-title{background:#ddd;margin-bottom:7px;padding:5px;text-transform:uppercase;font-weight:700;text-align:center;color:#333;font-size:13px}.pars-subgroup-title{font-weight:700;color:#333;font-size:16px}.pars-group{margin-left:0}.pars-subgroup{margin-left:15px}.pars-repeater-item{border:1px solid #ddd;border-radius:4px;padding:10px 10px 10px 15px;margin-bottom:10px}.pars-repeater-item-header{display:flex;justify-content:flex-end;margin-bottom:8px}.pars-repeater-remove{cursor:pointer}.pars-repeater-add{margin-top:5px}.pars-group-box{border:1px solid #ddd;padding-left:15px;padding-right:15px}.pars-fixed-label{display:flex;align-items:flex-start;flex-wrap:nowrap}.pars-fixed-label>label{flex:0 0 var(--pars-label-width);width:var(--pars-label-width);max-width:var(--pars-label-width)}.pars-fixed-label>div{flex:1 1 auto;max-width:none;min-width:0}.pars-modern .pars-group-box{border:1px solid #e3e8ef;border-radius:8px;padding:16px 16px 4px;margin-bottom:16px;background:#fff;box-shadow:0 1px 2px #1018280d}.pars-modern .pars-group-title{background:transparent;color:#1f2a37;text-transform:none;text-align:left;font-size:14px;font-weight:600;letter-spacing:.01em;padding:0 0 8px;margin-bottom:14px;border-bottom:2px solid #e3e8ef}.pars-modern .pars-subgroup-title{color:#1f2a37;font-size:14px;font-weight:600;padding-bottom:6px;margin-bottom:10px;border-bottom:1px solid #eef1f5}.pars-modern .pars-repeater-item{border:1px solid #e3e8ef;border-radius:10px;padding:14px 16px 2px;margin-bottom:14px;background:#f8fafc;box-shadow:0 1px 2px #1018280a}.pars-modern .pars-repeater-item-header{margin-bottom:6px}.pars-modern .pars-repeater-remove{background:transparent;border:1px solid transparent;color:#d92d20;padding:2px 8px;font-size:13px;font-weight:500;line-height:1.5;border-radius:6px;box-shadow:none;transition:background-color .15s ease,color .15s ease}.pars-modern .pars-repeater-remove:hover,.pars-modern .pars-repeater-remove:focus{background:#d92d2014;color:#b42318;box-shadow:none}.pars-modern .pars-repeater-add{background:#eff4ff;border:1px solid #cddbfe;color:#175cd3;padding:6px 14px;font-size:13px;font-weight:500;line-height:1.5;border-radius:8px;box-shadow:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.pars-modern .pars-repeater-add:hover,.pars-modern .pars-repeater-add:focus{background:#e0e9ff;border-color:#b4c9fc;color:#1849a9;box-shadow:none}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.EsFormInputComponent, selector: "form-input", inputs: ["minlength", "maxlength", "pattern", "Password", "Type"] }, { kind: "component", type: i5.EsFormSelectComponent, selector: "form-select", inputs: ["OptionsTemplate"] }, { kind: "component", type: i5.EsFormDateComponent, selector: "form-date", inputs: ["InOutFormat", "FloatingLabel", "DateFormat"] }, { kind: "component", type: i5.EsFormCheckboxComponent, selector: "form-checkbox", inputs: ["SliderMode"] }, { kind: "component", type: i5.EsFormInfoComponent, selector: "form-info", inputs: ["LabelColWidth", "InputColWidth", "Last", "FormGroupClass", "LabelInputRatio"] }, { kind: "component", type: i5.EsFormFileComponent, selector: "form-file", inputs: ["Multiple", "AllowDownload", "MaxSize", "FancyMode", "ReadFile", "AdditiveMode"] }, { kind: "component", type: i5.EsFormMultiselectComponent, selector: "form-multiselect", inputs: ["display", "InOutFormat", "FloatingLabel", "MaxShownElements"] }, { kind: "component", type: i5.EsFormAutocompleteComponent, selector: "form-autocomplete", inputs: ["MinChars", "SearchFunctionContext", "SearchFunction", "multiple", "forceSelection"] }, { kind: "component", type: EsParametersComponent, selector: "es-parameters", inputs: ["ParentCustomTemplates", "NamePrefix", "BooleanSliderMode", "DisplayMode", "HideEmpty", "LastParameterNoMargin", "LabelColWidth", "InputColWidth", "LabelFixedWidth", "LabelAutoWidth", "ModernStyles", "submitted", "RepeaterAddRemoveServerSide", "RepeaterAddRemove", "EmptyMessage", "Removal", "Readonly", "ListFormat", "FileMode", "Form", "AutocompleteHideChoicesOnSelection", "AutoCompleteDataRetrieve", "MultiselectMode", "LabelInputRatio"], outputs: ["inputFinalized"] }, { kind: "pipe", type: i2.LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None }); }
812
812
  }
813
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersComponent, decorators: [{
813
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersComponent, decorators: [{
814
814
  type: Component,
815
815
  args: [{ selector: "es-parameters", providers: [
816
816
  { provide: LocalizationService, useClass: EsParametersLoc },
@@ -876,17 +876,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImpo
876
876
  }] } });
877
877
 
878
878
  class EsParametersModule {
879
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
880
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.31", ngImport: i0, type: EsParametersModule, declarations: [EsParametersComponent, ParameterTypeDirective], imports: [CommonModule,
879
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
880
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.32", ngImport: i0, type: EsParametersModule, declarations: [EsParametersComponent, ParameterTypeDirective], imports: [CommonModule,
881
881
  LocalizationModule,
882
882
  FormsModule,
883
883
  FormsAndValidationsModule], exports: [EsParametersComponent, ParameterTypeDirective] }); }
884
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersModule, imports: [CommonModule,
884
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersModule, imports: [CommonModule,
885
885
  LocalizationModule,
886
886
  FormsModule,
887
887
  FormsAndValidationsModule] }); }
888
888
  }
889
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: EsParametersModule, decorators: [{
889
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.32", ngImport: i0, type: EsParametersModule, decorators: [{
890
890
  type: NgModule,
891
891
  args: [{
892
892
  declarations: [EsParametersComponent, ParameterTypeDirective],
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@esfaenza/parameters",
3
- "version": "20.3.56",
3
+ "version": "20.3.57",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },
7
7
  "peerDependencies": {
8
- "@esfaenza/access-control": "^20.3.17",
9
- "@esfaenza/extensions": "^20.3.24",
10
- "@esfaenza/forms-and-validations": "^20.3.28",
11
- "@esfaenza/localizations": "^20.3.20",
12
- "@angular/common": "^20.3.31",
13
- "@angular/core": "^20.3.31",
14
- "@angular/forms": "^20.3.31",
8
+ "@esfaenza/access-control": "^20.3.20",
9
+ "@esfaenza/extensions": "^20.3.27",
10
+ "@esfaenza/forms-and-validations": "^20.3.30",
11
+ "@esfaenza/localizations": "^20.3.23",
12
+ "@angular/common": "^20.3.32",
13
+ "@angular/core": "^20.3.32",
14
+ "@angular/forms": "^20.3.32",
15
15
  "dayjs": "1.11.23",
16
16
  "sweetalert2": "11.26.25",
17
17
  "@primeng/themes": "20.4.0",