@ngx-smz/core 21.10.0-next.3 → 21.10.0-next.4

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.
@@ -2792,11 +2792,11 @@ class ValidationMessagesComponent {
2792
2792
  this.controlSubscription?.unsubscribe();
2793
2793
  }
2794
2794
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ValidationMessagesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2795
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: ValidationMessagesComponent, isStandalone: false, selector: "smz-validation-messages", inputs: { input: "input", control: "control", behaviors: "behaviors", extraMessages: "extraMessages" }, ngImport: i0, template: "@if (behaviors?.showErrorsMethod != null ? control[behaviors.showErrorsMethod] : control[uiConfig.dialogs.forms.behaviors.showErrorsMethod]) {\r\n @if (controlMessages() | join : extraMessages; as messages) {\r\n @if (messages.length === 1) {\r\n @for (message of messages; track message) {\r\n <span class=\"col-12 error-message\">{{ message }}</span>\r\n }\r\n }\r\n\r\n @if (messages.length > 1) {\r\n @if (behaviors.showMultipleErrorMessages) {\r\n <span class=\"col-12 error-message asterisk\">{{ messages | describeArray }}</span>\r\n }\r\n\r\n @if (!behaviors.showMultipleErrorMessages) {\r\n <span class=\"col-12 error-message asterisk\" [smzTooltip]=\"messages | describeArray\">{{ uiConfig.dialogs.forms.multipleErrorMessagesLabel }} *</span>\r\n }\r\n }\r\n }\r\n}", dependencies: [{ kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: DescribeArrayPipe, name: "describeArray" }, { kind: "pipe", type: JoinPipe, name: "join" }] });
2795
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: ValidationMessagesComponent, isStandalone: false, selector: "smz-validation-messages", inputs: { input: "input", control: "control", behaviors: "behaviors", extraMessages: "extraMessages" }, ngImport: i0, template: "@if (behaviors?.showErrorsMethod != null ? control[behaviors.showErrorsMethod] : control[uiConfig.dialogs.forms.behaviors.showErrorsMethod]) {\r\n @if (controlMessages() | join : extraMessages; as messages) {\r\n @if (messages.length === 1) {\r\n @for (message of messages; track message) {\r\n <span class=\"w-full flex-none error-message p-2\">{{ message }}</span>\r\n }\r\n }\r\n\r\n @if (messages.length > 1) {\r\n @if (behaviors.showMultipleErrorMessages) {\r\n <span class=\"w-full flex-none error-message asterisk p-2\">{{ messages | describeArray }}</span>\r\n }\r\n\r\n @if (!behaviors.showMultipleErrorMessages) {\r\n <span class=\"w-full flex-none error-message asterisk p-2\" [smzTooltip]=\"messages | describeArray\">{{ uiConfig.dialogs.forms.multipleErrorMessagesLabel }} *</span>\r\n }\r\n }\r\n }\r\n}", dependencies: [{ kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: DescribeArrayPipe, name: "describeArray" }, { kind: "pipe", type: JoinPipe, name: "join" }] });
2796
2796
  }
2797
2797
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ValidationMessagesComponent, decorators: [{
2798
2798
  type: Component,
2799
- args: [{ selector: 'smz-validation-messages', standalone: false, template: "@if (behaviors?.showErrorsMethod != null ? control[behaviors.showErrorsMethod] : control[uiConfig.dialogs.forms.behaviors.showErrorsMethod]) {\r\n @if (controlMessages() | join : extraMessages; as messages) {\r\n @if (messages.length === 1) {\r\n @for (message of messages; track message) {\r\n <span class=\"col-12 error-message\">{{ message }}</span>\r\n }\r\n }\r\n\r\n @if (messages.length > 1) {\r\n @if (behaviors.showMultipleErrorMessages) {\r\n <span class=\"col-12 error-message asterisk\">{{ messages | describeArray }}</span>\r\n }\r\n\r\n @if (!behaviors.showMultipleErrorMessages) {\r\n <span class=\"col-12 error-message asterisk\" [smzTooltip]=\"messages | describeArray\">{{ uiConfig.dialogs.forms.multipleErrorMessagesLabel }} *</span>\r\n }\r\n }\r\n }\r\n}" }]
2799
+ args: [{ selector: 'smz-validation-messages', standalone: false, template: "@if (behaviors?.showErrorsMethod != null ? control[behaviors.showErrorsMethod] : control[uiConfig.dialogs.forms.behaviors.showErrorsMethod]) {\r\n @if (controlMessages() | join : extraMessages; as messages) {\r\n @if (messages.length === 1) {\r\n @for (message of messages; track message) {\r\n <span class=\"w-full flex-none error-message p-2\">{{ message }}</span>\r\n }\r\n }\r\n\r\n @if (messages.length > 1) {\r\n @if (behaviors.showMultipleErrorMessages) {\r\n <span class=\"w-full flex-none error-message asterisk p-2\">{{ messages | describeArray }}</span>\r\n }\r\n\r\n @if (!behaviors.showMultipleErrorMessages) {\r\n <span class=\"w-full flex-none error-message asterisk p-2\" [smzTooltip]=\"messages | describeArray\">{{ uiConfig.dialogs.forms.multipleErrorMessagesLabel }} *</span>\r\n }\r\n }\r\n }\r\n}" }]
2800
2800
  }], ctorParameters: () => [], propDecorators: { input: [{
2801
2801
  type: Input
2802
2802
  }], control: [{
@@ -2930,11 +2930,11 @@ class CheckBoxComponent {
2930
2930
  this.dialogVisibility.setValue(input, formId, event);
2931
2931
  }
2932
2932
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: CheckBoxComponent, deps: [{ token: SmzFormsVisibilityService }, { token: SmzDialogsVisibilityService }], target: i0.ɵɵFactoryTarget.Component });
2933
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: CheckBoxComponent, isStandalone: false, selector: "smz-checkbox", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, host: { classAttribute: "grid grid-nogutter" }, ngImport: i0, template: "<div class=\"grid col-12 grid-nogutter input_inner__wrapper flex-gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.showLabel || input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n <ui-checkbox class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" (changed)=\"emitChange(input, formId, $event)\" [binary]=\"true\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm\">{{input.name}}</label>\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "component", type: i2.SmzCheckboxComponent, selector: "ui-checkbox", inputs: ["label", "inputId", "value", "binary", "name"], outputs: ["changed"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
2933
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: CheckBoxComponent, isStandalone: false, selector: "smz-checkbox", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, host: { classAttribute: "flex flex-wrap" }, ngImport: i0, template: "<div class=\"flex flex-wrap w-full flex-none input_inner__wrapper -m-1\">\r\n <smz-label\r\n class=\"smz__input_name p-1\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.showLabel || input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"w-full flex-none flex justify-start items-center p-1 gap-1 -m-1\">\r\n <ui-checkbox class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" (changed)=\"emitChange(input, formId, $event)\" [binary]=\"true\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm p-1\">{{input.name}}</label>\r\n </div>\r\n <smz-validation-messages class=\"p-1\" [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "component", type: i2.SmzCheckboxComponent, selector: "ui-checkbox", inputs: ["label", "inputId", "value", "binary", "name"], outputs: ["changed"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
2934
2934
  }
2935
2935
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: CheckBoxComponent, decorators: [{
2936
2936
  type: Component,
2937
- args: [{ selector: 'smz-checkbox', host: { class: 'grid grid-nogutter' }, standalone: false, template: "<div class=\"grid col-12 grid-nogutter input_inner__wrapper flex-gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.showLabel || input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n <ui-checkbox class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" (changed)=\"emitChange(input, formId, $event)\" [binary]=\"true\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm\">{{input.name}}</label>\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
2937
+ args: [{ selector: 'smz-checkbox', host: { class: 'flex flex-wrap' }, standalone: false, template: "<div class=\"flex flex-wrap w-full flex-none input_inner__wrapper -m-1\">\r\n <smz-label\r\n class=\"smz__input_name p-1\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.showLabel || input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"w-full flex-none flex justify-start items-center p-1 gap-1 -m-1\">\r\n <ui-checkbox class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" (changed)=\"emitChange(input, formId, $event)\" [binary]=\"true\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm p-1\">{{input.name}}</label>\r\n </div>\r\n <smz-validation-messages class=\"p-1\" [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
2938
2938
  }], ctorParameters: () => [{ type: SmzFormsVisibilityService }, { type: SmzDialogsVisibilityService }], propDecorators: { input: [{
2939
2939
  type: Input
2940
2940
  }], formId: [{
@@ -2950,11 +2950,11 @@ class CheckBoxGroupComponent {
2950
2950
  control;
2951
2951
  behaviors;
2952
2952
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: CheckBoxGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2953
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: CheckBoxGroupComponent, isStandalone: false, selector: "smz-checkbox-group", inputs: { input: "input", control: "control", behaviors: "behaviors" }, host: { classAttribute: "grid grid-nogutter" }, ngImport: i0, template: "<div class=\"grid col-12 grid-nogutter input_inner__wrapper flex-gap-1 \">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n @for (option of input.options; track option) {\r\n <ui-checkbox class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "component", type: i2.SmzCheckboxComponent, selector: "ui-checkbox", inputs: ["label", "inputId", "value", "binary", "name"], outputs: ["changed"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
2953
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: CheckBoxGroupComponent, isStandalone: false, selector: "smz-checkbox-group", inputs: { input: "input", control: "control", behaviors: "behaviors" }, host: { classAttribute: "flex flex-wrap" }, ngImport: i0, template: "<div class=\"flex flex-wrap w-full flex-none input_inner__wrapper -m-1\">\r\n <smz-label\r\n class=\"smz__input_name p-1\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"w-full flex-none flex justify-start items-center p-1 gap-1 -m-1\">\r\n @for (option of input.options; track option) {\r\n <ui-checkbox class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm p-1\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages class=\"p-1\" [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "component", type: i2.SmzCheckboxComponent, selector: "ui-checkbox", inputs: ["label", "inputId", "value", "binary", "name"], outputs: ["changed"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
2954
2954
  }
2955
2955
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: CheckBoxGroupComponent, decorators: [{
2956
2956
  type: Component,
2957
- args: [{ selector: 'smz-checkbox-group', host: { class: 'grid grid-nogutter' }, standalone: false, template: "<div class=\"grid col-12 grid-nogutter input_inner__wrapper flex-gap-1 \">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n @for (option of input.options; track option) {\r\n <ui-checkbox class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
2957
+ args: [{ selector: 'smz-checkbox-group', host: { class: 'flex flex-wrap' }, standalone: false, template: "<div class=\"flex flex-wrap w-full flex-none input_inner__wrapper -m-1\">\r\n <smz-label\r\n class=\"smz__input_name p-1\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"w-full flex-none flex justify-start items-center p-1 gap-1 -m-1\">\r\n @for (option of input.options; track option) {\r\n <ui-checkbox class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\">\r\n </ui-checkbox>\r\n <label [for]=\"input.propertyName\" class=\"text-sm p-1\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages class=\"p-1\" [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
2958
2958
  }], propDecorators: { input: [{
2959
2959
  type: Input
2960
2960
  }], control: [{
@@ -2987,11 +2987,11 @@ class ColorPickerComponent {
2987
2987
  this.control.markAsTouched();
2988
2988
  }
2989
2989
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2990
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: ColorPickerComponent, isStandalone: false, selector: "smz-color-picker", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper grid grid-nogutter items-center justify-start flex-nowrap mt-1\">\r\n <ui-color-picker [id]=\"input.propertyName\" class=\"smz__input_value\" appendTo=\"body\" [formControl]=\"control\">\r\n </ui-color-picker>\r\n <div class=\"flex-grow\">\r\n <input\r\n #colorinput\r\n class=\"smz__input_value colorpicker-hexa-input ml-2\"\r\n smzInputText\r\n [disabled]=\"input.isDisabled\"\r\n [(ngModel)]=\"color\"\r\n (keyup)=\"onInputChange(colorinput.value)\"\r\n (blur)=\"markAsTouched()\"/>\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "component", type: i2.SmzColorPickerComponent, selector: "ui-color-picker", inputs: ["inputId", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
2990
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: ColorPickerComponent, isStandalone: false, selector: "smz-color-picker", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper flex flex-wrap items-center justify-start flex-nowrap mt-1\">\r\n <ui-color-picker [id]=\"input.propertyName\" class=\"smz__input_value\" appendTo=\"body\" [formControl]=\"control\">\r\n </ui-color-picker>\r\n <div class=\"flex-grow\">\r\n <input\r\n #colorinput\r\n class=\"smz__input_value colorpicker-hexa-input ml-2\"\r\n smzInputText\r\n [disabled]=\"input.isDisabled\"\r\n [(ngModel)]=\"color\"\r\n (keyup)=\"onInputChange(colorinput.value)\"\r\n (blur)=\"markAsTouched()\"/>\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "component", type: i2.SmzColorPickerComponent, selector: "ui-color-picker", inputs: ["inputId", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
2991
2991
  }
2992
2992
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ColorPickerComponent, decorators: [{
2993
2993
  type: Component,
2994
- args: [{ selector: 'smz-color-picker', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper grid grid-nogutter items-center justify-start flex-nowrap mt-1\">\r\n <ui-color-picker [id]=\"input.propertyName\" class=\"smz__input_value\" appendTo=\"body\" [formControl]=\"control\">\r\n </ui-color-picker>\r\n <div class=\"flex-grow\">\r\n <input\r\n #colorinput\r\n class=\"smz__input_value colorpicker-hexa-input ml-2\"\r\n smzInputText\r\n [disabled]=\"input.isDisabled\"\r\n [(ngModel)]=\"color\"\r\n (keyup)=\"onInputChange(colorinput.value)\"\r\n (blur)=\"markAsTouched()\"/>\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
2994
+ args: [{ selector: 'smz-color-picker', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper flex flex-wrap items-center justify-start flex-nowrap mt-1\">\r\n <ui-color-picker [id]=\"input.propertyName\" class=\"smz__input_value\" appendTo=\"body\" [formControl]=\"control\">\r\n </ui-color-picker>\r\n <div class=\"flex-grow\">\r\n <input\r\n #colorinput\r\n class=\"smz__input_value colorpicker-hexa-input ml-2\"\r\n smzInputText\r\n [disabled]=\"input.isDisabled\"\r\n [(ngModel)]=\"color\"\r\n (keyup)=\"onInputChange(colorinput.value)\"\r\n (blur)=\"markAsTouched()\"/>\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
2995
2995
  }], propDecorators: { input: [{
2996
2996
  type: Input
2997
2997
  }], control: [{
@@ -3031,11 +3031,11 @@ class DropdownComponent {
3031
3031
  this.formsVisibility.setValue(input, formId, event);
3032
3032
  }
3033
3033
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: DropdownComponent, deps: [{ token: SmzFormsDropdownService }, { token: SmzFormsVisibilityService }, { token: SmzDialogsVisibilityService }], target: i0.ɵɵFactoryTarget.Component });
3034
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: DropdownComponent, isStandalone: false, selector: "smz-dropdown", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "\r\n<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-select [id]=\"input.propertyName\" appendTo=\"body\" class=\"col-12 grid-nogutter smz__input_value flex-1\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n", dependencies: [{ kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
3034
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: DropdownComponent, isStandalone: false, selector: "smz-dropdown", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "\r\n<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-select [id]=\"input.propertyName\" appendTo=\"body\" class=\"w-full m-0 smz__input_value flex-1\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n", dependencies: [{ kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
3035
3035
  }
3036
3036
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: DropdownComponent, decorators: [{
3037
3037
  type: Component,
3038
- args: [{ selector: 'smz-dropdown', standalone: false, template: "\r\n<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-select [id]=\"input.propertyName\" appendTo=\"body\" class=\"col-12 grid-nogutter smz__input_value flex-1\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n" }]
3038
+ args: [{ selector: 'smz-dropdown', standalone: false, template: "\r\n<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-select [id]=\"input.propertyName\" appendTo=\"body\" class=\"w-full m-0 smz__input_value flex-1\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n" }]
3039
3039
  }], ctorParameters: () => [{ type: SmzFormsDropdownService }, { type: SmzFormsVisibilityService }, { type: SmzDialogsVisibilityService }], propDecorators: { input: [{
3040
3040
  type: Input
3041
3041
  }], formId: [{
@@ -3647,11 +3647,11 @@ class FileUploadComponent {
3647
3647
  return '.' + file.name.split('.').pop();
3648
3648
  }
3649
3649
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: FileUploadComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
3650
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: FileUploadComponent, isStandalone: false, selector: "smz-file-upload", inputs: { input: "input", form: "form", control: "control", behaviors: "behaviors" }, outputs: { selectChange: "selectChange" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<!-- ZONA DE DROPPING -->\r\n@if (input._file == null) {\r\n <div SmzDragDrop (fileDropped)=\"input.isDisabled ? notAllowed() : onFilesDropped($event, true, true, this.cdf)\" class=\"file_upload__drag-container grid grid-nogutter items-center justify-center mt-1 mb-1\">\r\n <div class=\"grid grid-nogutter flex-col items-center justify-center pt-3 pb-3\">\r\n <!-- ICONE DE UPLOAD -->\r\n <i [ngClass]=\"input.dragIconClass\" class=\"text-4xl mb-2\"></i>\r\n <span class=\"grid grid-nogutter gap-2\">\r\n <!-- INPUT DE UPLOAD MANUAL -->\r\n <input type=\"file\" [name]=\"uploadControl\" class=\"upload_manual_control\" [attr.disabled]=\"input.isDisabled\" [accept]=\"input.fileAccept\" [id]=\"uploadControl\" (change)=\"onInputFiles($event)\" />\r\n <!-- BOT\u00C3O PARA SELECIONAR ARQUIVO -->\r\n <label [for]=\"uploadControl\" [ngClass]=\"{ 'text-gray-500' : input.isDisabled,'clickable upload_manual_label hvr hvr-grow': !input.isDisabled }\">{{ input.inputMessage }}</label>\r\n <!-- MENSAGEM PARA ARRASTAR -->\r\n <span class=\"upload_field-drag-message\">ou {{ input.dragMessage }}</span>\r\n </span>\r\n <!-- MENSAGEM DE ERRO PARA SELE\u00C7\u00C3O DE ARQUIVO -->\r\n @for (error of errors; track error) {\r\n <ui-message [ngStyle]=\"{ 'width': '100%;' }\" class=\"dialog-messages\" [severity]=\"$any(error?.severity)\">\r\n {{ error?.detail ?? error?.summary ?? 'Erro desconhecido' }}\r\n </ui-message>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- CONTE\u00DADO COM ARQUIVO CARREGADO -->\r\n@if (input._file != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start flex-nowrap mt-1 mb-1 file_upload-container\">\r\n <div class=\"upload_field\" [style.height]=\"input.thumbnailSize\" [style.width]=\"input.thumbnailSize\">\r\n @switch (input._fileType) {\r\n <!-- IMAGENS -->\r\n @case ('image') {\r\n <!-- THUMBNAIL DE IMAGENS -->\r\n @if (input.base64) {\r\n <img class=\"upload_field-img mr-3\" [src]=\"input.base64 | safeUrl\"/>\r\n }\r\n <!-- ZOOM PARA IMAGENS -->\r\n <div class=\"upload_field__actions\">\r\n <div class=\"grid grid-nogutter items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n <!-- APLICA\u00C7\u00D5ES -->\r\n @case ('application') {\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <!-- THUMBNAIL DE APLICA\u00C7\u00D5ES -->\r\n @switch (input._fileExtension) {\r\n @case ('.pdf') {\r\n <i class=\"fa-solid fa-file-pdf\"></i>\r\n }\r\n @case ('.doc') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.docx') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.ppt') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.pptx') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.xls') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.xlsx') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.7zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.rar') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.txt') {\r\n <i class=\"fa-solid fa-file-lines\"></i>\r\n }\r\n @default {\r\n <i class=\"fa-solid fa-file\"></i>\r\n }\r\n }\r\n </div>\r\n <!-- ZOOM PARA PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n <div class=\"upload_field__actions\">\r\n <div class=\"grid grid-nogutter items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n }\r\n <!-- V\u00CDDEOS -->\r\n @case ('video') {\r\n <!-- THUMBNAIL DE V\u00CDDEOS -->\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-video\"></i>\r\n </div>\r\n }\r\n <!-- AUDIOS -->\r\n @case ('audio') {\r\n <!-- THUMBNAIL DE AUDIOS -->\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-audio\"></i>\r\n </div>\r\n }\r\n <!-- OUTROS -->\r\n @default {\r\n <!-- THUMBNAIL GENERICOS -->\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file\"></i>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <!-- NOME E TAMANHO DO ARQUIVO -->\r\n <div class=\"grid grid-nogutter flex-col items-start justify-end ml-3\">\r\n <span>{{ input._file.name | fileNameShorten : input.shortenLength : input.shortenSeparator }} <i class=\"far fa-trash-alt hvr hvr-grow text-red-500 clickable ml-2 mb-1 cursor-pointer\" (click)=\"clear(true)\"></i></span>\r\n @if (input.showFileSize) {\r\n <span><small>{{ formatBytes(input._file.size) }}</small></span>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- MENSAGEM DE ERRO DE VALIDA\u00C7\u00C3O DO FORM -->\r\n<smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n\r\n@if (isZoomActive) {\r\n <div class=\"upload_field__fullscreen-image\">\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n @if (input.base64) {\r\n <iframe [src]=\"input.base64 | safeUrl\" class=\"animate__animated animate__zoomIn animate__faster\" width=\"100%\" height=\"100%\" frameborder=\"0\"></iframe>\r\n }\r\n } @else {\r\n @if (input.base64) {\r\n <img class=\"animate__animated animate__zoomIn animate__faster\" [src]=\"input.base64 | safeUrl\" height=\"100%\" width=\"100%\"/>\r\n }\r\n }\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE IMAGENS -->\r\n <!-- ICONE DE SAIR DO FULLSCREEN -->\r\n <i class=\"far fa-times-circle clickable m-4 hvr hvr-grow text-4xl text-white\" (click)=\"restoreZoom()\"></i>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.SmzMessageComponent, selector: "ui-message", inputs: ["severity", "text", "icon"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "directive", type: FileDragDropDirective, selector: "[SmzDragDrop]", outputs: ["fileDropped"] }, { kind: "pipe", type: SafeUrlPipe$1, name: "safeUrl" }, { kind: "pipe", type: FileNameShortenPipe, name: "fileNameShorten" }] });
3650
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: FileUploadComponent, isStandalone: false, selector: "smz-file-upload", inputs: { input: "input", form: "form", control: "control", behaviors: "behaviors" }, outputs: { selectChange: "selectChange" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<!-- ZONA DE DROPPING -->\r\n@if (input._file == null) {\r\n <div SmzDragDrop (fileDropped)=\"input.isDisabled ? notAllowed() : onFilesDropped($event, true, true, this.cdf)\" class=\"file_upload__drag-container flex flex-wrap items-center justify-center mt-1 mb-1\">\r\n <div class=\"flex flex-wrap flex-col items-center justify-center pt-3 pb-3\">\r\n <!-- ICONE DE UPLOAD -->\r\n <i [ngClass]=\"input.dragIconClass\" class=\"text-4xl mb-2\"></i>\r\n <span class=\"flex flex-wrap gap-2\">\r\n <!-- INPUT DE UPLOAD MANUAL -->\r\n <input type=\"file\" [name]=\"uploadControl\" class=\"upload_manual_control\" [attr.disabled]=\"input.isDisabled\" [accept]=\"input.fileAccept\" [id]=\"uploadControl\" (change)=\"onInputFiles($event)\" />\r\n <!-- BOT\u00C3O PARA SELECIONAR ARQUIVO -->\r\n <label [for]=\"uploadControl\" [ngClass]=\"{ 'text-gray-500' : input.isDisabled,'clickable upload_manual_label hvr hvr-grow': !input.isDisabled }\">{{ input.inputMessage }}</label>\r\n <!-- MENSAGEM PARA ARRASTAR -->\r\n <span class=\"upload_field-drag-message\">ou {{ input.dragMessage }}</span>\r\n </span>\r\n <!-- MENSAGEM DE ERRO PARA SELE\u00C7\u00C3O DE ARQUIVO -->\r\n @for (error of errors; track error) {\r\n <ui-message [ngStyle]=\"{ 'width': '100%;' }\" class=\"dialog-messages\" [severity]=\"$any(error?.severity)\">\r\n {{ error?.detail ?? error?.summary ?? 'Erro desconhecido' }}\r\n </ui-message>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- CONTE\u00DADO COM ARQUIVO CARREGADO -->\r\n@if (input._file != null) {\r\n <div class=\"flex flex-wrap items-center justify-start flex-nowrap mt-1 mb-1 file_upload-container\">\r\n <div class=\"upload_field\" [style.height]=\"input.thumbnailSize\" [style.width]=\"input.thumbnailSize\">\r\n @switch (input._fileType) {\r\n <!-- IMAGENS -->\r\n @case ('image') {\r\n <!-- THUMBNAIL DE IMAGENS -->\r\n @if (input.base64) {\r\n <img class=\"upload_field-img mr-3\" [src]=\"input.base64 | safeUrl\"/>\r\n }\r\n <!-- ZOOM PARA IMAGENS -->\r\n <div class=\"upload_field__actions\">\r\n <div class=\"flex flex-wrap items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n <!-- APLICA\u00C7\u00D5ES -->\r\n @case ('application') {\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <!-- THUMBNAIL DE APLICA\u00C7\u00D5ES -->\r\n @switch (input._fileExtension) {\r\n @case ('.pdf') {\r\n <i class=\"fa-solid fa-file-pdf\"></i>\r\n }\r\n @case ('.doc') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.docx') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.ppt') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.pptx') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.xls') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.xlsx') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.7zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.rar') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.txt') {\r\n <i class=\"fa-solid fa-file-lines\"></i>\r\n }\r\n @default {\r\n <i class=\"fa-solid fa-file\"></i>\r\n }\r\n }\r\n </div>\r\n <!-- ZOOM PARA PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n <div class=\"upload_field__actions\">\r\n <div class=\"flex flex-wrap items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n }\r\n <!-- V\u00CDDEOS -->\r\n @case ('video') {\r\n <!-- THUMBNAIL DE V\u00CDDEOS -->\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-video\"></i>\r\n </div>\r\n }\r\n <!-- AUDIOS -->\r\n @case ('audio') {\r\n <!-- THUMBNAIL DE AUDIOS -->\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-audio\"></i>\r\n </div>\r\n }\r\n <!-- OUTROS -->\r\n @default {\r\n <!-- THUMBNAIL GENERICOS -->\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file\"></i>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <!-- NOME E TAMANHO DO ARQUIVO -->\r\n <div class=\"flex flex-wrap flex-col items-start justify-end ml-3\">\r\n <span>{{ input._file.name | fileNameShorten : input.shortenLength : input.shortenSeparator }} <i class=\"far fa-trash-alt hvr hvr-grow text-red-500 clickable ml-2 mb-1 cursor-pointer\" (click)=\"clear(true)\"></i></span>\r\n @if (input.showFileSize) {\r\n <span><small>{{ formatBytes(input._file.size) }}</small></span>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- MENSAGEM DE ERRO DE VALIDA\u00C7\u00C3O DO FORM -->\r\n<smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n\r\n@if (isZoomActive) {\r\n <div class=\"upload_field__fullscreen-image\">\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n @if (input.base64) {\r\n <iframe [src]=\"input.base64 | safeUrl\" class=\"animate__animated animate__zoomIn animate__faster\" width=\"100%\" height=\"100%\" frameborder=\"0\"></iframe>\r\n }\r\n } @else {\r\n @if (input.base64) {\r\n <img class=\"animate__animated animate__zoomIn animate__faster\" [src]=\"input.base64 | safeUrl\" height=\"100%\" width=\"100%\"/>\r\n }\r\n }\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE IMAGENS -->\r\n <!-- ICONE DE SAIR DO FULLSCREEN -->\r\n <i class=\"far fa-times-circle clickable m-4 hvr hvr-grow text-4xl text-white\" (click)=\"restoreZoom()\"></i>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.SmzMessageComponent, selector: "ui-message", inputs: ["severity", "text", "icon"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "directive", type: FileDragDropDirective, selector: "[SmzDragDrop]", outputs: ["fileDropped"] }, { kind: "pipe", type: SafeUrlPipe$1, name: "safeUrl" }, { kind: "pipe", type: FileNameShortenPipe, name: "fileNameShorten" }] });
3651
3651
  }
3652
3652
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: FileUploadComponent, decorators: [{
3653
3653
  type: Component,
3654
- args: [{ selector: 'smz-file-upload', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<!-- ZONA DE DROPPING -->\r\n@if (input._file == null) {\r\n <div SmzDragDrop (fileDropped)=\"input.isDisabled ? notAllowed() : onFilesDropped($event, true, true, this.cdf)\" class=\"file_upload__drag-container grid grid-nogutter items-center justify-center mt-1 mb-1\">\r\n <div class=\"grid grid-nogutter flex-col items-center justify-center pt-3 pb-3\">\r\n <!-- ICONE DE UPLOAD -->\r\n <i [ngClass]=\"input.dragIconClass\" class=\"text-4xl mb-2\"></i>\r\n <span class=\"grid grid-nogutter gap-2\">\r\n <!-- INPUT DE UPLOAD MANUAL -->\r\n <input type=\"file\" [name]=\"uploadControl\" class=\"upload_manual_control\" [attr.disabled]=\"input.isDisabled\" [accept]=\"input.fileAccept\" [id]=\"uploadControl\" (change)=\"onInputFiles($event)\" />\r\n <!-- BOT\u00C3O PARA SELECIONAR ARQUIVO -->\r\n <label [for]=\"uploadControl\" [ngClass]=\"{ 'text-gray-500' : input.isDisabled,'clickable upload_manual_label hvr hvr-grow': !input.isDisabled }\">{{ input.inputMessage }}</label>\r\n <!-- MENSAGEM PARA ARRASTAR -->\r\n <span class=\"upload_field-drag-message\">ou {{ input.dragMessage }}</span>\r\n </span>\r\n <!-- MENSAGEM DE ERRO PARA SELE\u00C7\u00C3O DE ARQUIVO -->\r\n @for (error of errors; track error) {\r\n <ui-message [ngStyle]=\"{ 'width': '100%;' }\" class=\"dialog-messages\" [severity]=\"$any(error?.severity)\">\r\n {{ error?.detail ?? error?.summary ?? 'Erro desconhecido' }}\r\n </ui-message>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- CONTE\u00DADO COM ARQUIVO CARREGADO -->\r\n@if (input._file != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start flex-nowrap mt-1 mb-1 file_upload-container\">\r\n <div class=\"upload_field\" [style.height]=\"input.thumbnailSize\" [style.width]=\"input.thumbnailSize\">\r\n @switch (input._fileType) {\r\n <!-- IMAGENS -->\r\n @case ('image') {\r\n <!-- THUMBNAIL DE IMAGENS -->\r\n @if (input.base64) {\r\n <img class=\"upload_field-img mr-3\" [src]=\"input.base64 | safeUrl\"/>\r\n }\r\n <!-- ZOOM PARA IMAGENS -->\r\n <div class=\"upload_field__actions\">\r\n <div class=\"grid grid-nogutter items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n <!-- APLICA\u00C7\u00D5ES -->\r\n @case ('application') {\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <!-- THUMBNAIL DE APLICA\u00C7\u00D5ES -->\r\n @switch (input._fileExtension) {\r\n @case ('.pdf') {\r\n <i class=\"fa-solid fa-file-pdf\"></i>\r\n }\r\n @case ('.doc') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.docx') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.ppt') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.pptx') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.xls') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.xlsx') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.7zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.rar') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.txt') {\r\n <i class=\"fa-solid fa-file-lines\"></i>\r\n }\r\n @default {\r\n <i class=\"fa-solid fa-file\"></i>\r\n }\r\n }\r\n </div>\r\n <!-- ZOOM PARA PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n <div class=\"upload_field__actions\">\r\n <div class=\"grid grid-nogutter items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n }\r\n <!-- V\u00CDDEOS -->\r\n @case ('video') {\r\n <!-- THUMBNAIL DE V\u00CDDEOS -->\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-video\"></i>\r\n </div>\r\n }\r\n <!-- AUDIOS -->\r\n @case ('audio') {\r\n <!-- THUMBNAIL DE AUDIOS -->\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-audio\"></i>\r\n </div>\r\n }\r\n <!-- OUTROS -->\r\n @default {\r\n <!-- THUMBNAIL GENERICOS -->\r\n <div class=\"upload_field-generic h-full w-full grid grid-nogutter items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file\"></i>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <!-- NOME E TAMANHO DO ARQUIVO -->\r\n <div class=\"grid grid-nogutter flex-col items-start justify-end ml-3\">\r\n <span>{{ input._file.name | fileNameShorten : input.shortenLength : input.shortenSeparator }} <i class=\"far fa-trash-alt hvr hvr-grow text-red-500 clickable ml-2 mb-1 cursor-pointer\" (click)=\"clear(true)\"></i></span>\r\n @if (input.showFileSize) {\r\n <span><small>{{ formatBytes(input._file.size) }}</small></span>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- MENSAGEM DE ERRO DE VALIDA\u00C7\u00C3O DO FORM -->\r\n<smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n\r\n@if (isZoomActive) {\r\n <div class=\"upload_field__fullscreen-image\">\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n @if (input.base64) {\r\n <iframe [src]=\"input.base64 | safeUrl\" class=\"animate__animated animate__zoomIn animate__faster\" width=\"100%\" height=\"100%\" frameborder=\"0\"></iframe>\r\n }\r\n } @else {\r\n @if (input.base64) {\r\n <img class=\"animate__animated animate__zoomIn animate__faster\" [src]=\"input.base64 | safeUrl\" height=\"100%\" width=\"100%\"/>\r\n }\r\n }\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE IMAGENS -->\r\n <!-- ICONE DE SAIR DO FULLSCREEN -->\r\n <i class=\"far fa-times-circle clickable m-4 hvr hvr-grow text-4xl text-white\" (click)=\"restoreZoom()\"></i>\r\n </div>\r\n}" }]
3654
+ args: [{ selector: 'smz-file-upload', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<!-- ZONA DE DROPPING -->\r\n@if (input._file == null) {\r\n <div SmzDragDrop (fileDropped)=\"input.isDisabled ? notAllowed() : onFilesDropped($event, true, true, this.cdf)\" class=\"file_upload__drag-container flex flex-wrap items-center justify-center mt-1 mb-1\">\r\n <div class=\"flex flex-wrap flex-col items-center justify-center pt-3 pb-3\">\r\n <!-- ICONE DE UPLOAD -->\r\n <i [ngClass]=\"input.dragIconClass\" class=\"text-4xl mb-2\"></i>\r\n <span class=\"flex flex-wrap gap-2\">\r\n <!-- INPUT DE UPLOAD MANUAL -->\r\n <input type=\"file\" [name]=\"uploadControl\" class=\"upload_manual_control\" [attr.disabled]=\"input.isDisabled\" [accept]=\"input.fileAccept\" [id]=\"uploadControl\" (change)=\"onInputFiles($event)\" />\r\n <!-- BOT\u00C3O PARA SELECIONAR ARQUIVO -->\r\n <label [for]=\"uploadControl\" [ngClass]=\"{ 'text-gray-500' : input.isDisabled,'clickable upload_manual_label hvr hvr-grow': !input.isDisabled }\">{{ input.inputMessage }}</label>\r\n <!-- MENSAGEM PARA ARRASTAR -->\r\n <span class=\"upload_field-drag-message\">ou {{ input.dragMessage }}</span>\r\n </span>\r\n <!-- MENSAGEM DE ERRO PARA SELE\u00C7\u00C3O DE ARQUIVO -->\r\n @for (error of errors; track error) {\r\n <ui-message [ngStyle]=\"{ 'width': '100%;' }\" class=\"dialog-messages\" [severity]=\"$any(error?.severity)\">\r\n {{ error?.detail ?? error?.summary ?? 'Erro desconhecido' }}\r\n </ui-message>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- CONTE\u00DADO COM ARQUIVO CARREGADO -->\r\n@if (input._file != null) {\r\n <div class=\"flex flex-wrap items-center justify-start flex-nowrap mt-1 mb-1 file_upload-container\">\r\n <div class=\"upload_field\" [style.height]=\"input.thumbnailSize\" [style.width]=\"input.thumbnailSize\">\r\n @switch (input._fileType) {\r\n <!-- IMAGENS -->\r\n @case ('image') {\r\n <!-- THUMBNAIL DE IMAGENS -->\r\n @if (input.base64) {\r\n <img class=\"upload_field-img mr-3\" [src]=\"input.base64 | safeUrl\"/>\r\n }\r\n <!-- ZOOM PARA IMAGENS -->\r\n <div class=\"upload_field__actions\">\r\n <div class=\"flex flex-wrap items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n <!-- APLICA\u00C7\u00D5ES -->\r\n @case ('application') {\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <!-- THUMBNAIL DE APLICA\u00C7\u00D5ES -->\r\n @switch (input._fileExtension) {\r\n @case ('.pdf') {\r\n <i class=\"fa-solid fa-file-pdf\"></i>\r\n }\r\n @case ('.doc') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.docx') {\r\n <i class=\"fa-solid fa-file-word\"></i>\r\n }\r\n @case ('.ppt') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.pptx') {\r\n <i class=\"fa-solid fa-file-powerpoint\"></i>\r\n }\r\n @case ('.xls') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.xlsx') {\r\n <i class=\"fa-solid fa-file-excel\"></i>\r\n }\r\n @case ('.zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.7zip') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.rar') {\r\n <i class=\"fa-solid fa-file-zipper\"></i>\r\n }\r\n @case ('.txt') {\r\n <i class=\"fa-solid fa-file-lines\"></i>\r\n }\r\n @default {\r\n <i class=\"fa-solid fa-file\"></i>\r\n }\r\n }\r\n </div>\r\n <!-- ZOOM PARA PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n <div class=\"upload_field__actions\">\r\n <div class=\"flex flex-wrap items-center justify-end mr-2 mt-2\">\r\n @if (input.allowZoom) {\r\n <i class=\"fa-solid fa-magnifying-glass-plus upload_field__actions_icon hvr hvr-grow text-white clickable\" (click)=\"applyZoom()\"></i>\r\n }\r\n </div>\r\n </div>\r\n }\r\n }\r\n <!-- V\u00CDDEOS -->\r\n @case ('video') {\r\n <!-- THUMBNAIL DE V\u00CDDEOS -->\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-video\"></i>\r\n </div>\r\n }\r\n <!-- AUDIOS -->\r\n @case ('audio') {\r\n <!-- THUMBNAIL DE AUDIOS -->\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file-audio\"></i>\r\n </div>\r\n }\r\n <!-- OUTROS -->\r\n @default {\r\n <!-- THUMBNAIL GENERICOS -->\r\n <div class=\"upload_field-generic h-full w-full flex flex-wrap items-center text-5xl justify-center mr-3\">\r\n <i class=\"fa-solid fa-file\"></i>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <!-- NOME E TAMANHO DO ARQUIVO -->\r\n <div class=\"flex flex-wrap flex-col items-start justify-end ml-3\">\r\n <span>{{ input._file.name | fileNameShorten : input.shortenLength : input.shortenSeparator }} <i class=\"far fa-trash-alt hvr hvr-grow text-red-500 clickable ml-2 mb-1 cursor-pointer\" (click)=\"clear(true)\"></i></span>\r\n @if (input.showFileSize) {\r\n <span><small>{{ formatBytes(input._file.size) }}</small></span>\r\n }\r\n </div>\r\n </div>\r\n}\r\n\r\n<!-- MENSAGEM DE ERRO DE VALIDA\u00C7\u00C3O DO FORM -->\r\n<smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n\r\n@if (isZoomActive) {\r\n <div class=\"upload_field__fullscreen-image\">\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE PDF -->\r\n @if (input._fileExtension === '.pdf') {\r\n @if (input.base64) {\r\n <iframe [src]=\"input.base64 | safeUrl\" class=\"animate__animated animate__zoomIn animate__faster\" width=\"100%\" height=\"100%\" frameborder=\"0\"></iframe>\r\n }\r\n } @else {\r\n @if (input.base64) {\r\n <img class=\"animate__animated animate__zoomIn animate__faster\" [src]=\"input.base64 | safeUrl\" height=\"100%\" width=\"100%\"/>\r\n }\r\n }\r\n <!-- VISUALIZA\u00C7\u00C3O FULLSCREEN DE IMAGENS -->\r\n <!-- ICONE DE SAIR DO FULLSCREEN -->\r\n <i class=\"far fa-times-circle clickable m-4 hvr hvr-grow text-4xl text-white\" (click)=\"restoreZoom()\"></i>\r\n </div>\r\n}" }]
3655
3655
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$3.Store }], propDecorators: { input: [{
3656
3656
  type: Input
3657
3657
  }], form: [{
@@ -3710,11 +3710,11 @@ class InputCurrencyComponent {
3710
3710
  control;
3711
3711
  behaviors;
3712
3712
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputCurrencyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3713
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputCurrencyComponent, isStandalone: false, selector: "smz-input-currency", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"p-inputgroup input_inner__wrapper\">\r\n <span class=\"p-inputgroup-addon\">R$</span>\r\n <input smzInputText class=\"col-12 smz__input_value flex-1\" [id]=\"input.propertyName\" type=\"number\"\r\n [formControl]=\"control\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1$1.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$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
3713
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputCurrencyComponent, isStandalone: false, selector: "smz-input-currency", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"p-inputgroup input_inner__wrapper\">\r\n <span class=\"p-inputgroup-addon\">R$</span>\r\n <input smzInputText class=\"w-full smz__input_value flex-1 py-2\" [id]=\"input.propertyName\" type=\"number\"\r\n [formControl]=\"control\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1$1.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$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
3714
3714
  }
3715
3715
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputCurrencyComponent, decorators: [{
3716
3716
  type: Component,
3717
- args: [{ selector: 'smz-input-currency', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"p-inputgroup input_inner__wrapper\">\r\n <span class=\"p-inputgroup-addon\">R$</span>\r\n <input smzInputText class=\"col-12 smz__input_value flex-1\" [id]=\"input.propertyName\" type=\"number\"\r\n [formControl]=\"control\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n" }]
3717
+ args: [{ selector: 'smz-input-currency', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"p-inputgroup input_inner__wrapper\">\r\n <span class=\"p-inputgroup-addon\">R$</span>\r\n <input smzInputText class=\"w-full smz__input_value flex-1 py-2\" [id]=\"input.propertyName\" type=\"number\"\r\n [formControl]=\"control\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n" }]
3718
3718
  }], propDecorators: { input: [{
3719
3719
  type: Input
3720
3720
  }], control: [{
@@ -4083,7 +4083,7 @@ class InputListComponent {
4083
4083
  return form;
4084
4084
  }
4085
4085
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputListComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$3.Store }, { token: i1$3.Actions }, { token: i1$1.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
4086
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: InputListComponent, isStandalone: false, selector: "smz-input-list", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <ui-listbox [options]=\"input.listBoxOptions\" [metaKeySelection]=\"false\" [checkbox]=\"false\" [filter]=\"input.showFilter\" optionLabel=\"name\" dataKey=\"id\" [listStyle]=\"{'height': input.height ? input.height : '200px'}\" [style]=\"{'width':'100%'}\" [styleClass]=\"input.styleClass\" [disabled]=\"input.isDisabled\" (clicked)=\"onClick($event)\" [readonly]=\"isInlineEditingEnabled\" [emptyMessage]=\"input.emptyMessage\" [(ngModel)]=\"current\">\r\n\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"smz__list-header\">\r\n @if (input.showAddButton && !input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAdd()\" [disabled]=\"input.limitCount != null && input.listBoxOptions?.length >= input.limitCount\" smzTooltip=\"Adicionar novo item\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showAddButton && input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAddInBatch()\" smzTooltip=\"Adicionar novos itens\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showSortButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-down-a-z\" clickStopPropagation class=\"p-nocustom\" (click)=\"onSort()\" smzTooltip=\"Reordenar\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showClearButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" clickStopPropagation class=\"p-nocustom\" (click)=\"onClear()\" smzTooltip=\"Limpar a lista\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template let-item smzTemplate=\"item\">\r\n <div class=\"grid grid-nogutter items-center w-full justify-between\">\r\n @if (!isInlineEditingEnabled || (isInlineEditingEnabled && current !== item)) {\r\n @if (input.crud?.inputType === 'float') {\r\n <div class=\"smz__list_item-title\">{{ item.name | number : input.crud.digitsInfo : input.crud.labelLocale }}</div>\r\n } @else {\r\n <div class=\"smz__list_item-title\">{{ item.name }}</div>\r\n }\r\n }\r\n\r\n @if (isInlineEditingEnabled && current === item) {\r\n @if (editForm != null) {\r\n <div class=\"col grid grid-nogutter items-center justify-center flex-gap-2 py-3 px-0\" clickStopPropagation>\r\n <form #form [formGroup]=\"editForm\" class=\"col relative\">\r\n <input type=\"text\" clickStopPropagation smzInputText formControlName=\"value\"/>\r\n @if (editForm.get('value'); as valueInput) {\r\n @if (valueInput.touched && valueInput.hasError('required')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">Campo Obrigat\u00F3rio.</div>\r\n }\r\n @if (valueInput.touched && valueInput.hasError('unique')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">J\u00E1 existe um item com esse nome.</div>\r\n }\r\n }\r\n </form>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" clickStopPropagation [disabled]=\"!editForm.valid\" class=\"p-nocustom inline_action_button\" (click)=\"onConfirmInlineEditing(item)\" [rounded]=\"true\" severity=\"success\" variant=\"text\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" clickStopPropagation class=\"p-nocustom inline_action_button\" (click)=\"cancelEdit()\" [rounded]=\"true\" severity=\"danger\" variant=\"text\"></button>\r\n </div>\r\n }\r\n }\r\n\r\n @if (current === item && !isInlineEditingEnabled) {\r\n <div class=\"smz__list_item-actions\" clickStopPropagation>\r\n @if (input.showEditButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-pencil\" class=\"p-nocustom\" (click)=\"onEdit(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showRemoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-trash\" class=\"p-nocustom\" (click)=\"input.askBeforeRemoveItem ? askBeforeRemove(item) : remove(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-up\" class=\"p-nocustom\" (click)=\"moveUp(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-down\" class=\"p-nocustom\" (click)=\"moveDown(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template smzTemplate=\"footer\">\r\n @if (input.listBoxOptions.length === 0 && input.validatorsPreset?.isRequired) {\r\n <span class=\"col-12 smz__footer-message\">*Campo obrigat\u00F3rio</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length === input.limitCount) {\r\n <span class=\"col-12 smz__footer-message text-blue-300\">*Limite atingido.</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length > input.limitCount) {\r\n <span class=\"col-12 smz__footer-message\">*Limite ultrapassado</span>\r\n }\r\n </ng-template>\r\n </ui-listbox>\r\n</div>", dependencies: [{ kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzListboxComponent, selector: "ui-listbox", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "checkbox", "filter", "filterBy", "filterMatchMode", "metaKeySelection", "readonly", "emptyMessage", "emptyFilterMessage", "listStyle", "style", "styleClass"], outputs: ["changed", "clicked"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4086
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: InputListComponent, isStandalone: false, selector: "smz-input-list", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <ui-listbox [options]=\"input.listBoxOptions\" [metaKeySelection]=\"false\" [checkbox]=\"false\" [filter]=\"input.showFilter\" optionLabel=\"name\" dataKey=\"id\" [listStyle]=\"{'height': input.height ? input.height : '200px'}\" [style]=\"{'width':'100%'}\" [styleClass]=\"input.styleClass\" [disabled]=\"input.isDisabled\" (clicked)=\"onClick($event)\" [readonly]=\"isInlineEditingEnabled\" [emptyMessage]=\"input.emptyMessage\" [(ngModel)]=\"current\">\r\n\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"smz__list-header\">\r\n @if (input.showAddButton && !input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAdd()\" [disabled]=\"input.limitCount != null && input.listBoxOptions?.length >= input.limitCount\" smzTooltip=\"Adicionar novo item\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showAddButton && input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAddInBatch()\" smzTooltip=\"Adicionar novos itens\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showSortButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-down-a-z\" clickStopPropagation class=\"p-nocustom\" (click)=\"onSort()\" smzTooltip=\"Reordenar\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showClearButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" clickStopPropagation class=\"p-nocustom\" (click)=\"onClear()\" smzTooltip=\"Limpar a lista\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template let-item smzTemplate=\"item\">\r\n <div class=\"flex flex-wrap items-center w-full justify-between\">\r\n @if (!isInlineEditingEnabled || (isInlineEditingEnabled && current !== item)) {\r\n @if (input.crud?.inputType === 'float') {\r\n <div class=\"smz__list_item-title\">{{ item.name | number : input.crud.digitsInfo : input.crud.labelLocale }}</div>\r\n } @else {\r\n <div class=\"smz__list_item-title\">{{ item.name }}</div>\r\n }\r\n }\r\n\r\n @if (isInlineEditingEnabled && current === item) {\r\n @if (editForm != null) {\r\n <div class=\"flex-1 flex flex-wrap items-center justify-center py-3 px-0 -m-2\" clickStopPropagation>\r\n <form #form [formGroup]=\"editForm\" class=\"flex-1 relative p-2\">\r\n <input type=\"text\" clickStopPropagation smzInputText formControlName=\"value\"/>\r\n @if (editForm.get('value'); as valueInput) {\r\n @if (valueInput.touched && valueInput.hasError('required')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">Campo Obrigat\u00F3rio.</div>\r\n }\r\n @if (valueInput.touched && valueInput.hasError('unique')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">J\u00E1 existe um item com esse nome.</div>\r\n }\r\n }\r\n </form>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" clickStopPropagation [disabled]=\"!editForm.valid\" class=\"p-nocustom inline_action_button p-2\" (click)=\"onConfirmInlineEditing(item)\" [rounded]=\"true\" severity=\"success\" variant=\"text\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" clickStopPropagation class=\"p-nocustom inline_action_button p-2\" (click)=\"cancelEdit()\" [rounded]=\"true\" severity=\"danger\" variant=\"text\"></button>\r\n </div>\r\n }\r\n }\r\n\r\n @if (current === item && !isInlineEditingEnabled) {\r\n <div class=\"smz__list_item-actions\" clickStopPropagation>\r\n @if (input.showEditButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-pencil\" class=\"p-nocustom\" (click)=\"onEdit(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showRemoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-trash\" class=\"p-nocustom\" (click)=\"input.askBeforeRemoveItem ? askBeforeRemove(item) : remove(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-up\" class=\"p-nocustom\" (click)=\"moveUp(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-down\" class=\"p-nocustom\" (click)=\"moveDown(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template smzTemplate=\"footer\">\r\n @if (input.listBoxOptions.length === 0 && input.validatorsPreset?.isRequired) {\r\n <span class=\"w-full flex-none smz__footer-message p-2\">*Campo obrigat\u00F3rio</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length === input.limitCount) {\r\n <span class=\"w-full flex-none smz__footer-message text-blue-300 p-2\">*Limite atingido.</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length > input.limitCount) {\r\n <span class=\"w-full flex-none smz__footer-message p-2\">*Limite ultrapassado</span>\r\n }\r\n </ng-template>\r\n </ui-listbox>\r\n</div>", dependencies: [{ kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzListboxComponent, selector: "ui-listbox", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "checkbox", "filter", "filterBy", "filterMatchMode", "metaKeySelection", "readonly", "emptyMessage", "emptyFilterMessage", "listStyle", "style", "styleClass"], outputs: ["changed", "clicked"] }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4087
4087
  }
4088
4088
  __decorate([
4089
4089
  Confirmable('Deseja realmente excluir esse item ?', 'Exclusão')
@@ -4093,7 +4093,7 @@ __decorate([
4093
4093
  ], InputListComponent.prototype, "onClear", null);
4094
4094
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputListComponent, decorators: [{
4095
4095
  type: Component,
4096
- args: [{ selector: 'smz-input-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <ui-listbox [options]=\"input.listBoxOptions\" [metaKeySelection]=\"false\" [checkbox]=\"false\" [filter]=\"input.showFilter\" optionLabel=\"name\" dataKey=\"id\" [listStyle]=\"{'height': input.height ? input.height : '200px'}\" [style]=\"{'width':'100%'}\" [styleClass]=\"input.styleClass\" [disabled]=\"input.isDisabled\" (clicked)=\"onClick($event)\" [readonly]=\"isInlineEditingEnabled\" [emptyMessage]=\"input.emptyMessage\" [(ngModel)]=\"current\">\r\n\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"smz__list-header\">\r\n @if (input.showAddButton && !input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAdd()\" [disabled]=\"input.limitCount != null && input.listBoxOptions?.length >= input.limitCount\" smzTooltip=\"Adicionar novo item\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showAddButton && input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAddInBatch()\" smzTooltip=\"Adicionar novos itens\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showSortButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-down-a-z\" clickStopPropagation class=\"p-nocustom\" (click)=\"onSort()\" smzTooltip=\"Reordenar\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showClearButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" clickStopPropagation class=\"p-nocustom\" (click)=\"onClear()\" smzTooltip=\"Limpar a lista\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template let-item smzTemplate=\"item\">\r\n <div class=\"grid grid-nogutter items-center w-full justify-between\">\r\n @if (!isInlineEditingEnabled || (isInlineEditingEnabled && current !== item)) {\r\n @if (input.crud?.inputType === 'float') {\r\n <div class=\"smz__list_item-title\">{{ item.name | number : input.crud.digitsInfo : input.crud.labelLocale }}</div>\r\n } @else {\r\n <div class=\"smz__list_item-title\">{{ item.name }}</div>\r\n }\r\n }\r\n\r\n @if (isInlineEditingEnabled && current === item) {\r\n @if (editForm != null) {\r\n <div class=\"col grid grid-nogutter items-center justify-center flex-gap-2 py-3 px-0\" clickStopPropagation>\r\n <form #form [formGroup]=\"editForm\" class=\"col relative\">\r\n <input type=\"text\" clickStopPropagation smzInputText formControlName=\"value\"/>\r\n @if (editForm.get('value'); as valueInput) {\r\n @if (valueInput.touched && valueInput.hasError('required')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">Campo Obrigat\u00F3rio.</div>\r\n }\r\n @if (valueInput.touched && valueInput.hasError('unique')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">J\u00E1 existe um item com esse nome.</div>\r\n }\r\n }\r\n </form>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" clickStopPropagation [disabled]=\"!editForm.valid\" class=\"p-nocustom inline_action_button\" (click)=\"onConfirmInlineEditing(item)\" [rounded]=\"true\" severity=\"success\" variant=\"text\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" clickStopPropagation class=\"p-nocustom inline_action_button\" (click)=\"cancelEdit()\" [rounded]=\"true\" severity=\"danger\" variant=\"text\"></button>\r\n </div>\r\n }\r\n }\r\n\r\n @if (current === item && !isInlineEditingEnabled) {\r\n <div class=\"smz__list_item-actions\" clickStopPropagation>\r\n @if (input.showEditButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-pencil\" class=\"p-nocustom\" (click)=\"onEdit(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showRemoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-trash\" class=\"p-nocustom\" (click)=\"input.askBeforeRemoveItem ? askBeforeRemove(item) : remove(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-up\" class=\"p-nocustom\" (click)=\"moveUp(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-down\" class=\"p-nocustom\" (click)=\"moveDown(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template smzTemplate=\"footer\">\r\n @if (input.listBoxOptions.length === 0 && input.validatorsPreset?.isRequired) {\r\n <span class=\"col-12 smz__footer-message\">*Campo obrigat\u00F3rio</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length === input.limitCount) {\r\n <span class=\"col-12 smz__footer-message text-blue-300\">*Limite atingido.</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length > input.limitCount) {\r\n <span class=\"col-12 smz__footer-message\">*Limite ultrapassado</span>\r\n }\r\n </ng-template>\r\n </ui-listbox>\r\n</div>" }]
4096
+ args: [{ selector: 'smz-input-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <ui-listbox [options]=\"input.listBoxOptions\" [metaKeySelection]=\"false\" [checkbox]=\"false\" [filter]=\"input.showFilter\" optionLabel=\"name\" dataKey=\"id\" [listStyle]=\"{'height': input.height ? input.height : '200px'}\" [style]=\"{'width':'100%'}\" [styleClass]=\"input.styleClass\" [disabled]=\"input.isDisabled\" (clicked)=\"onClick($event)\" [readonly]=\"isInlineEditingEnabled\" [emptyMessage]=\"input.emptyMessage\" [(ngModel)]=\"current\">\r\n\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"smz__list-header\">\r\n @if (input.showAddButton && !input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAdd()\" [disabled]=\"input.limitCount != null && input.listBoxOptions?.length >= input.limitCount\" smzTooltip=\"Adicionar novo item\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showAddButton && input.allowBatchCreation) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-plus\" clickStopPropagation class=\"p-nocustom\" (click)=\"onAddInBatch()\" smzTooltip=\"Adicionar novos itens\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showSortButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-down-a-z\" clickStopPropagation class=\"p-nocustom\" (click)=\"onSort()\" smzTooltip=\"Reordenar\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showClearButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" clickStopPropagation class=\"p-nocustom\" (click)=\"onClear()\" smzTooltip=\"Limpar a lista\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template let-item smzTemplate=\"item\">\r\n <div class=\"flex flex-wrap items-center w-full justify-between\">\r\n @if (!isInlineEditingEnabled || (isInlineEditingEnabled && current !== item)) {\r\n @if (input.crud?.inputType === 'float') {\r\n <div class=\"smz__list_item-title\">{{ item.name | number : input.crud.digitsInfo : input.crud.labelLocale }}</div>\r\n } @else {\r\n <div class=\"smz__list_item-title\">{{ item.name }}</div>\r\n }\r\n }\r\n\r\n @if (isInlineEditingEnabled && current === item) {\r\n @if (editForm != null) {\r\n <div class=\"flex-1 flex flex-wrap items-center justify-center py-3 px-0 -m-2\" clickStopPropagation>\r\n <form #form [formGroup]=\"editForm\" class=\"flex-1 relative p-2\">\r\n <input type=\"text\" clickStopPropagation smzInputText formControlName=\"value\"/>\r\n @if (editForm.get('value'); as valueInput) {\r\n @if (valueInput.touched && valueInput.hasError('required')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">Campo Obrigat\u00F3rio.</div>\r\n }\r\n @if (valueInput.touched && valueInput.hasError('unique')) {\r\n <div class=\"text-xs text-red-500 absolute right-3 my-1\">J\u00E1 existe um item com esse nome.</div>\r\n }\r\n }\r\n </form>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" clickStopPropagation [disabled]=\"!editForm.valid\" class=\"p-nocustom inline_action_button p-2\" (click)=\"onConfirmInlineEditing(item)\" [rounded]=\"true\" severity=\"success\" variant=\"text\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" clickStopPropagation class=\"p-nocustom inline_action_button p-2\" (click)=\"cancelEdit()\" [rounded]=\"true\" severity=\"danger\" variant=\"text\"></button>\r\n </div>\r\n }\r\n }\r\n\r\n @if (current === item && !isInlineEditingEnabled) {\r\n <div class=\"smz__list_item-actions\" clickStopPropagation>\r\n @if (input.showEditButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-pencil\" class=\"p-nocustom\" (click)=\"onEdit(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showRemoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-trash\" class=\"p-nocustom\" (click)=\"input.askBeforeRemoveItem ? askBeforeRemove(item) : remove(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-up\" class=\"p-nocustom\" (click)=\"moveUp(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (input.showMoveButton) {\r\n <button clickStopPropagation smzButton type=\"button\" icon=\"fa-solid fa-arrow-down\" class=\"p-nocustom\" (click)=\"moveDown(item)\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template smzTemplate=\"footer\">\r\n @if (input.listBoxOptions.length === 0 && input.validatorsPreset?.isRequired) {\r\n <span class=\"w-full flex-none smz__footer-message p-2\">*Campo obrigat\u00F3rio</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length === input.limitCount) {\r\n <span class=\"w-full flex-none smz__footer-message text-blue-300 p-2\">*Limite atingido.</span>\r\n }\r\n @if (input.limitCount != null && input.listBoxOptions?.length > input.limitCount) {\r\n <span class=\"w-full flex-none smz__footer-message p-2\">*Limite ultrapassado</span>\r\n }\r\n </ng-template>\r\n </ui-listbox>\r\n</div>" }]
4097
4097
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$3.Store }, { type: i1$3.Actions }, { type: i1$1.UntypedFormBuilder }], propDecorators: { input: [{
4098
4098
  type: Input
4099
4099
  }], control: [{
@@ -4169,11 +4169,11 @@ class InputPasswordComponent {
4169
4169
  control;
4170
4170
  behaviors;
4171
4171
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4172
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputPasswordComponent, isStandalone: false, selector: "smz-input-password", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-password [promptLabel]=\"input.promptLabel\" [weakLabel]=\"input.weakLabel\" [mediumLabel]=\"input.mediumLabel\" [strongLabel]=\"input.strongLabel\" class=\"col-12 smz__input_value flex-1\" [id]=\"input.propertyName\" type=\"password\" [feedback]=\"input.feedback\" [toggleMask]=\"input.toggleMask\" [mediumRegex]=\"input.mediumRegex\" [strongRegex]=\"input.strongRegex\" [formControl]=\"control\">\r\n </ui-password>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzPasswordComponent, selector: "ui-password", inputs: ["toggleMask", "feedback", "promptLabel", "weakLabel", "mediumLabel", "strongLabel", "mediumRegex", "strongRegex", "placeholder", "inputId"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4172
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputPasswordComponent, isStandalone: false, selector: "smz-input-password", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-password [promptLabel]=\"input.promptLabel\" [weakLabel]=\"input.weakLabel\" [mediumLabel]=\"input.mediumLabel\" [strongLabel]=\"input.strongLabel\" class=\"w-full smz__input_value flex-1\" [id]=\"input.propertyName\" type=\"password\" [feedback]=\"input.feedback\" [toggleMask]=\"input.toggleMask\" [mediumRegex]=\"input.mediumRegex\" [strongRegex]=\"input.strongRegex\" [formControl]=\"control\">\r\n </ui-password>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzPasswordComponent, selector: "ui-password", inputs: ["toggleMask", "feedback", "promptLabel", "weakLabel", "mediumLabel", "strongLabel", "mediumRegex", "strongRegex", "placeholder", "inputId"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4173
4173
  }
4174
4174
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputPasswordComponent, decorators: [{
4175
4175
  type: Component,
4176
- args: [{ selector: 'smz-input-password', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-password [promptLabel]=\"input.promptLabel\" [weakLabel]=\"input.weakLabel\" [mediumLabel]=\"input.mediumLabel\" [strongLabel]=\"input.strongLabel\" class=\"col-12 smz__input_value flex-1\" [id]=\"input.propertyName\" type=\"password\" [feedback]=\"input.feedback\" [toggleMask]=\"input.toggleMask\" [mediumRegex]=\"input.mediumRegex\" [strongRegex]=\"input.strongRegex\" [formControl]=\"control\">\r\n </ui-password>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4176
+ args: [{ selector: 'smz-input-password', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-password [promptLabel]=\"input.promptLabel\" [weakLabel]=\"input.weakLabel\" [mediumLabel]=\"input.mediumLabel\" [strongLabel]=\"input.strongLabel\" class=\"w-full smz__input_value flex-1\" [id]=\"input.propertyName\" type=\"password\" [feedback]=\"input.feedback\" [toggleMask]=\"input.toggleMask\" [mediumRegex]=\"input.mediumRegex\" [strongRegex]=\"input.strongRegex\" [formControl]=\"control\">\r\n </ui-password>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4177
4177
  }], propDecorators: { input: [{
4178
4178
  type: Input
4179
4179
  }], control: [{
@@ -4187,11 +4187,11 @@ class InputSwitchComponent {
4187
4187
  control;
4188
4188
  behaviors;
4189
4189
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputSwitchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4190
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputSwitchComponent, isStandalone: false, selector: "smz-input-switch", inputs: { input: "input", control: "control", behaviors: "behaviors" }, host: { classAttribute: "grid grid-nogutter" }, ngImport: i0, template: "<div class=\"input_inner__wrapper col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n\r\n <ui-toggle-switch class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" [attr.disabled]=\"input.isDisabled\" binary=\"true\">\r\n </ui-toggle-switch>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzToggleSwitchComponent, selector: "ui-toggle-switch", inputs: ["name"], outputs: ["changed"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4190
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputSwitchComponent, isStandalone: false, selector: "smz-input-switch", inputs: { input: "input", control: "control", behaviors: "behaviors" }, host: { classAttribute: "flex flex-wrap" }, ngImport: i0, template: "<div class=\"input_inner__wrapper w-full flex-none flex justify-start items-center gap-1 -m-1\">\r\n <smz-label\r\n class=\"smz__input_name p-1\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n\r\n <ui-toggle-switch class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" [attr.disabled]=\"input.isDisabled\" binary=\"true\">\r\n </ui-toggle-switch>\r\n <smz-validation-messages class=\"p-1\" [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzToggleSwitchComponent, selector: "ui-toggle-switch", inputs: ["name"], outputs: ["changed"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4191
4191
  }
4192
4192
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputSwitchComponent, decorators: [{
4193
4193
  type: Component,
4194
- args: [{ selector: 'smz-input-switch', host: { class: 'grid grid-nogutter' }, standalone: false, template: "<div class=\"input_inner__wrapper col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n\r\n <ui-toggle-switch class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" [attr.disabled]=\"input.isDisabled\" binary=\"true\">\r\n </ui-toggle-switch>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4194
+ args: [{ selector: 'smz-input-switch', host: { class: 'flex flex-wrap' }, standalone: false, template: "<div class=\"input_inner__wrapper w-full flex-none flex justify-start items-center gap-1 -m-1\">\r\n <smz-label\r\n class=\"smz__input_name p-1\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n\r\n <ui-toggle-switch class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [formControl]=\"control\" [attr.disabled]=\"input.isDisabled\" binary=\"true\">\r\n </ui-toggle-switch>\r\n <smz-validation-messages class=\"p-1\" [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4195
4195
  }], propDecorators: { input: [{
4196
4196
  type: Input
4197
4197
  }], control: [{
@@ -4206,11 +4206,11 @@ class InputTextAreaComponent {
4206
4206
  control;
4207
4207
  behaviors;
4208
4208
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4209
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputTextAreaComponent, isStandalone: false, selector: "smz-input-text-area", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <textarea\r\n smzTextarea\r\n [rows]=\"input.textAreaRows != null ? input.textAreaRows : 5\"\r\n class=\"col-12 smz__input_value flex-1\"\r\n [id]=\"input.propertyName\"\r\n [formControl]=\"control\">\r\n </textarea>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzTextareaDirective, selector: "textarea[smzTextarea]", inputs: ["invalid", "autoResize"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4209
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputTextAreaComponent, isStandalone: false, selector: "smz-input-text-area", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <textarea\r\n smzTextarea\r\n [rows]=\"input.textAreaRows != null ? input.textAreaRows : 5\"\r\n class=\"w-full smz__input_value flex-1 py-2\"\r\n [id]=\"input.propertyName\"\r\n [formControl]=\"control\">\r\n </textarea>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzTextareaDirective, selector: "textarea[smzTextarea]", inputs: ["invalid", "autoResize"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4210
4210
  }
4211
4211
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTextAreaComponent, decorators: [{
4212
4212
  type: Component,
4213
- args: [{ selector: 'smz-input-text-area', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <textarea\r\n smzTextarea\r\n [rows]=\"input.textAreaRows != null ? input.textAreaRows : 5\"\r\n class=\"col-12 smz__input_value flex-1\"\r\n [id]=\"input.propertyName\"\r\n [formControl]=\"control\">\r\n </textarea>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4213
+ args: [{ selector: 'smz-input-text-area', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <textarea\r\n smzTextarea\r\n [rows]=\"input.textAreaRows != null ? input.textAreaRows : 5\"\r\n class=\"w-full smz__input_value flex-1 py-2\"\r\n [id]=\"input.propertyName\"\r\n [formControl]=\"control\">\r\n </textarea>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4214
4214
  }], propDecorators: { input: [{
4215
4215
  type: Input
4216
4216
  }], control: [{
@@ -4324,8 +4324,8 @@ class SmzAutocompleteSelectorComponent {
4324
4324
  }
4325
4325
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzAutocompleteSelectorComponent, deps: [{ token: i0.ElementRef }, { token: i1$3.Store }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
4326
4326
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzAutocompleteSelectorComponent, isStandalone: true, selector: "smz-autocomplete-selector", inputs: { isRequired: "isRequired", allowCustomValues: "allowCustomValues", option: "option", suggestions: "suggestions" }, outputs: { selectedChange: "selectedChange", suggestionsChanged: "suggestionsChanged", finished: "finished" }, ngImport: i0, template: `
4327
- <div class="col-12 px-0 grid grid-nogutter items-center justify-start gap-2">
4328
- <ui-auto-complete class="col" styleClass="w-full" [(ngModel)]="option.selected" [suggestions]="suggestions" [dropdown]="true" [emptyMessage]="option.emptyMessage" (completeMethod)="search($event)" (cleared)="onClear()" (blurred)="handleSelection()" (selectedItem)="onSelect()" (keydown)="handleKeyDown($event)">
4327
+ <div class="w-full flex-none px-0 flex flex-wrap items-center justify-start gap-2">
4328
+ <ui-auto-complete class="flex-1" styleClass="w-full" [(ngModel)]="option.selected" [suggestions]="suggestions" [dropdown]="true" [emptyMessage]="option.emptyMessage" (completeMethod)="search($event)" (cleared)="onClear()" (blurred)="handleSelection()" (selectedItem)="onSelect()" (keydown)="handleKeyDown($event)">
4329
4329
 
4330
4330
  <ng-template smzTemplate="header">
4331
4331
  @if (option.dataSourceDisplayName != null) {
@@ -4349,8 +4349,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
4349
4349
  ],
4350
4350
  changeDetection: ChangeDetectionStrategy.OnPush,
4351
4351
  template: `
4352
- <div class="col-12 px-0 grid grid-nogutter items-center justify-start gap-2">
4353
- <ui-auto-complete class="col" styleClass="w-full" [(ngModel)]="option.selected" [suggestions]="suggestions" [dropdown]="true" [emptyMessage]="option.emptyMessage" (completeMethod)="search($event)" (cleared)="onClear()" (blurred)="handleSelection()" (selectedItem)="onSelect()" (keydown)="handleKeyDown($event)">
4352
+ <div class="w-full flex-none px-0 flex flex-wrap items-center justify-start gap-2">
4353
+ <ui-auto-complete class="flex-1" styleClass="w-full" [(ngModel)]="option.selected" [suggestions]="suggestions" [dropdown]="true" [emptyMessage]="option.emptyMessage" (completeMethod)="search($event)" (cleared)="onClear()" (blurred)="handleSelection()" (selectedItem)="onSelect()" (keydown)="handleKeyDown($event)">
4354
4354
 
4355
4355
  <ng-template smzTemplate="header">
4356
4356
  @if (option.dataSourceDisplayName != null) {
@@ -4635,7 +4635,7 @@ class SmzInputAutocompleteTagArea {
4635
4635
  <label class="smz__input_name" [innerHTML]="input.name"></label>
4636
4636
  }
4637
4637
  <div class="input_inner__wrapper" [id]="input.propertyName">
4638
- <textarea #inputArea id="inputArea" smzTextarea smzSmartAutocompleteTag [formControl]="$any(control)" [options]="input.config.options" [rows]="input.textAreaRows" (tagTyped)="onTag($event)" class="col-12"></textarea>
4638
+ <textarea #inputArea id="inputArea" smzTextarea smzSmartAutocompleteTag [formControl]="$any(control)" [options]="input.config.options" [rows]="input.textAreaRows" (tagTyped)="onTag($event)" class="w-full flex-none py-2"></textarea>
4639
4639
  <smz-validation-messages [input]="input" [control]="$any(control)" [behaviors]="behaviors"></smz-validation-messages>
4640
4640
  </div>
4641
4641
 
@@ -4662,7 +4662,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
4662
4662
  <label class="smz__input_name" [innerHTML]="input.name"></label>
4663
4663
  }
4664
4664
  <div class="input_inner__wrapper" [id]="input.propertyName">
4665
- <textarea #inputArea id="inputArea" smzTextarea smzSmartAutocompleteTag [formControl]="$any(control)" [options]="input.config.options" [rows]="input.textAreaRows" (tagTyped)="onTag($event)" class="col-12"></textarea>
4665
+ <textarea #inputArea id="inputArea" smzTextarea smzSmartAutocompleteTag [formControl]="$any(control)" [options]="input.config.options" [rows]="input.textAreaRows" (tagTyped)="onTag($event)" class="w-full flex-none py-2"></textarea>
4666
4666
  <smz-validation-messages [input]="input" [control]="$any(control)" [behaviors]="behaviors"></smz-validation-messages>
4667
4667
  </div>
4668
4668
 
@@ -4706,11 +4706,11 @@ class InputTextComponent {
4706
4706
  control;
4707
4707
  behaviors;
4708
4708
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
4709
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputTextComponent, isStandalone: false, selector: "smz-input-text", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <input\r\n smzInputText\r\n class=\"col-12 smz__input_value flex-1\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [formControl]=\"control\"\r\n [smzAutoFocus]=\"input.autoFocus\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.SmzAutoFocusDirective, selector: "[smzAutoFocus]", inputs: ["smzAutoFocus"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4709
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputTextComponent, isStandalone: false, selector: "smz-input-text", inputs: { input: "input", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <input\r\n smzInputText\r\n class=\"w-full smz__input_value flex-1 py-2\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [formControl]=\"control\"\r\n [smzAutoFocus]=\"input.autoFocus\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.SmzAutoFocusDirective, selector: "[smzAutoFocus]", inputs: ["smzAutoFocus"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4710
4710
  }
4711
4711
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTextComponent, decorators: [{
4712
4712
  type: Component,
4713
- args: [{ selector: 'smz-input-text', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <input\r\n smzInputText\r\n class=\"col-12 smz__input_value flex-1\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [formControl]=\"control\"\r\n [smzAutoFocus]=\"input.autoFocus\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4713
+ args: [{ selector: 'smz-input-text', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n <input\r\n smzInputText\r\n class=\"w-full smz__input_value flex-1 py-2\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [formControl]=\"control\"\r\n [smzAutoFocus]=\"input.autoFocus\">\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4714
4714
  }], propDecorators: { input: [{
4715
4715
  type: Input
4716
4716
  }], control: [{
@@ -4777,11 +4777,11 @@ class InputTreeComponent {
4777
4777
  }
4778
4778
  }
4779
4779
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTreeComponent, deps: [{ token: SmzFormsDropdownService }], target: i0.ɵɵFactoryTarget.Component });
4780
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: InputTreeComponent, isStandalone: false, selector: "smz-input-tree", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "@if (nodes$ | async; as nodes) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-tree-select class=\"col-12 grid-nogutter smz__input_value flex-1\" containerStyleClass=\"w-full\" [formControl]=\"control\" [options]=\"nodes\" [placeholder]=\"input.name\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [selectionMode]=\"input.selectionMode\" [filterInputAutoFocus]=\"input.autofocusFilter\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [filterPlaceholder]=\"input.emptyFilterMessage\" [scrollHeight]=\"input.scrollHeight\" [display]=\"input.display\">\r\n @for (inputType of input.allTypes; track inputType) {\r\n <ng-template let-node [smzTemplate]=\"inputType\">\r\n @if (node != null) {\r\n <div [innerHTML]=\"node.label | safeHtml\" [smzTooltip]=\"node.tooltip\"></div>\r\n }\r\n </ng-template>\r\n }\r\n </ui-tree-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzTreeSelectComponent, selector: "ui-tree-select", inputs: ["options", "selectionMode", "placeholder", "filter", "filterPlaceholder", "emptyMessage", "showClear", "scrollHeight", "styleClass", "containerStyleClass", "appendTo", "display", "filterInputAutoFocus"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
4780
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: InputTreeComponent, isStandalone: false, selector: "smz-input-tree", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "@if (nodes$ | async; as nodes) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-tree-select class=\"w-full m-0 smz__input_value flex-1\" containerStyleClass=\"w-full\" [formControl]=\"control\" [options]=\"nodes\" [placeholder]=\"input.name\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [selectionMode]=\"input.selectionMode\" [filterInputAutoFocus]=\"input.autofocusFilter\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [filterPlaceholder]=\"input.emptyFilterMessage\" [scrollHeight]=\"input.scrollHeight\" [display]=\"input.display\">\r\n @for (inputType of input.allTypes; track inputType) {\r\n <ng-template let-node [smzTemplate]=\"inputType\">\r\n @if (node != null) {\r\n <div [innerHTML]=\"node.label | safeHtml\" [smzTooltip]=\"node.tooltip\"></div>\r\n }\r\n </ng-template>\r\n }\r\n </ui-tree-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzTreeSelectComponent, selector: "ui-tree-select", inputs: ["options", "selectionMode", "placeholder", "filter", "filterPlaceholder", "emptyMessage", "showClear", "scrollHeight", "styleClass", "containerStyleClass", "appendTo", "display", "filterInputAutoFocus"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
4781
4781
  }
4782
4782
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTreeComponent, decorators: [{
4783
4783
  type: Component,
4784
- args: [{ selector: 'smz-input-tree', standalone: false, template: "@if (nodes$ | async; as nodes) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-tree-select class=\"col-12 grid-nogutter smz__input_value flex-1\" containerStyleClass=\"w-full\" [formControl]=\"control\" [options]=\"nodes\" [placeholder]=\"input.name\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [selectionMode]=\"input.selectionMode\" [filterInputAutoFocus]=\"input.autofocusFilter\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [filterPlaceholder]=\"input.emptyFilterMessage\" [scrollHeight]=\"input.scrollHeight\" [display]=\"input.display\">\r\n @for (inputType of input.allTypes; track inputType) {\r\n <ng-template let-node [smzTemplate]=\"inputType\">\r\n @if (node != null) {\r\n <div [innerHTML]=\"node.label | safeHtml\" [smzTooltip]=\"node.tooltip\"></div>\r\n }\r\n </ng-template>\r\n }\r\n </ui-tree-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}" }]
4784
+ args: [{ selector: 'smz-input-tree', standalone: false, template: "@if (nodes$ | async; as nodes) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-tree-select class=\"w-full m-0 smz__input_value flex-1\" containerStyleClass=\"w-full\" [formControl]=\"control\" [options]=\"nodes\" [placeholder]=\"input.name\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [selectionMode]=\"input.selectionMode\" [filterInputAutoFocus]=\"input.autofocusFilter\" [emptyMessage]=\"input.emptyMessage\" [showClear]=\"input.showClear\" [filterPlaceholder]=\"input.emptyFilterMessage\" [scrollHeight]=\"input.scrollHeight\" [display]=\"input.display\">\r\n @for (inputType of input.allTypes; track inputType) {\r\n <ng-template let-node [smzTemplate]=\"inputType\">\r\n @if (node != null) {\r\n <div [innerHTML]=\"node.label | safeHtml\" [smzTooltip]=\"node.tooltip\"></div>\r\n }\r\n </ng-template>\r\n }\r\n </ui-tree-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}" }]
4785
4785
  }], ctorParameters: () => [{ type: SmzFormsDropdownService }], propDecorators: { input: [{
4786
4786
  type: Input
4787
4787
  }], formId: [{
@@ -4828,11 +4828,11 @@ class LinkedDropdownComponent {
4828
4828
  }));
4829
4829
  }
4830
4830
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LinkedDropdownComponent, deps: [{ token: SmzFormsDropdownService }], target: i0.ɵɵFactoryTarget.Component });
4831
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: LinkedDropdownComponent, isStandalone: false, selector: "smz-linked-dropdown", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "@if (options$ | async; as options) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-select appendTo=\"body\" class=\"col-12 grid-nogutter smz__input_value flex-1\" [options]=\"options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" (changed)=\"service.setValue(input, formId, $event)\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}", dependencies: [{ kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
4831
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: LinkedDropdownComponent, isStandalone: false, selector: "smz-linked-dropdown", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "@if (options$ | async; as options) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-select appendTo=\"body\" class=\"w-full m-0 smz__input_value flex-1\" [options]=\"options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" (changed)=\"service.setValue(input, formId, $event)\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}", dependencies: [{ kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
4832
4832
  }
4833
4833
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LinkedDropdownComponent, decorators: [{
4834
4834
  type: Component,
4835
- args: [{ selector: 'smz-linked-dropdown', standalone: false, template: "@if (options$ | async; as options) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-select appendTo=\"body\" class=\"col-12 grid-nogutter smz__input_value flex-1\" [options]=\"options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" (changed)=\"service.setValue(input, formId, $event)\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}" }]
4835
+ args: [{ selector: 'smz-linked-dropdown', standalone: false, template: "@if (options$ | async; as options) {\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-select appendTo=\"body\" class=\"w-full m-0 smz__input_value flex-1\" [options]=\"options\" [formControl]=\"control\" optionLabel=\"name\" dataKey=\"id\" (changed)=\"service.setValue(input, formId, $event)\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\">\r\n <!-- TODO: AutofocusFilter foi removido pois n\u00E3o existe no primeng\r\n [autofocusFilter]=\"input.autofocusFilter\" -->\r\n </ui-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n </div>\r\n}" }]
4836
4836
  }], ctorParameters: () => [{ type: SmzFormsDropdownService }], propDecorators: { input: [{
4837
4837
  type: Input
4838
4838
  }], formId: [{
@@ -4878,11 +4878,11 @@ class LinkedMultiSelectComponent {
4878
4878
  this.service.registryObserver(this.input, this.formId);
4879
4879
  }
4880
4880
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LinkedMultiSelectComponent, deps: [{ token: SmzFormsDropdownService }], target: i0.ɵɵFactoryTarget.Component });
4881
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: LinkedMultiSelectComponent, isStandalone: false, selector: "smz-linked-multi-select", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-multi-select class=\"col-12 grid-nogutter smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"(service.observers[formId + input.propertyName]?.options | async ) | GetCurrentMultiselectOptions : input\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzMultiSelectComponent, selector: "ui-multi-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "showToggleAll", "emptyMessage", "emptyFilterMessage", "maxSelectedLabels", "selectedItemsLabel", "panelStyle", "styleClass", "inputId", "autofocusFilter", "appendTo", "display"], outputs: ["changed", "panelHide", "panelShow"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: GetCurrentMultiselectOptionsPipe, name: "GetCurrentMultiselectOptions" }] });
4881
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: LinkedMultiSelectComponent, isStandalone: false, selector: "smz-linked-multi-select", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-multi-select class=\"w-full m-0 smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"(service.observers[formId + input.propertyName]?.options | async ) | GetCurrentMultiselectOptions : input\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzMultiSelectComponent, selector: "ui-multi-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "showToggleAll", "emptyMessage", "emptyFilterMessage", "maxSelectedLabels", "selectedItemsLabel", "panelStyle", "styleClass", "inputId", "autofocusFilter", "appendTo", "display"], outputs: ["changed", "panelHide", "panelShow"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: GetCurrentMultiselectOptionsPipe, name: "GetCurrentMultiselectOptions" }] });
4882
4882
  }
4883
4883
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LinkedMultiSelectComponent, decorators: [{
4884
4884
  type: Component,
4885
- args: [{ selector: 'smz-linked-multi-select', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-multi-select class=\"col-12 grid-nogutter smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"(service.observers[formId + input.propertyName]?.options | async ) | GetCurrentMultiselectOptions : input\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n" }]
4885
+ args: [{ selector: 'smz-linked-multi-select', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-multi-select class=\"w-full m-0 smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"(service.observers[formId + input.propertyName]?.options | async ) | GetCurrentMultiselectOptions : input\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>\r\n" }]
4886
4886
  }], ctorParameters: () => [{ type: SmzFormsDropdownService }], propDecorators: { input: [{
4887
4887
  type: Input
4888
4888
  }], formId: [{
@@ -4924,11 +4924,11 @@ class MultiSelectComponent {
4924
4924
  this.formsVisibility.setValue(input, formId, event);
4925
4925
  }
4926
4926
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MultiSelectComponent, deps: [{ token: SmzFormsDropdownService }, { token: SmzFormsVisibilityService }, { token: SmzDialogsVisibilityService }], target: i0.ɵɵFactoryTarget.Component });
4927
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MultiSelectComponent, isStandalone: false, selector: "smz-multi-select", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-multi-select class=\"col-12 grid-nogutter smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzMultiSelectComponent, selector: "ui-multi-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "showToggleAll", "emptyMessage", "emptyFilterMessage", "maxSelectedLabels", "selectedItemsLabel", "panelStyle", "styleClass", "inputId", "autofocusFilter", "appendTo", "display"], outputs: ["changed", "panelHide", "panelShow"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4927
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MultiSelectComponent, isStandalone: false, selector: "smz-multi-select", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-multi-select class=\"w-full m-0 smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzMultiSelectComponent, selector: "ui-multi-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "showToggleAll", "emptyMessage", "emptyFilterMessage", "maxSelectedLabels", "selectedItemsLabel", "panelStyle", "styleClass", "inputId", "autofocusFilter", "appendTo", "display"], outputs: ["changed", "panelHide", "panelShow"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4928
4928
  }
4929
4929
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MultiSelectComponent, decorators: [{
4930
4930
  type: Component,
4931
- args: [{ selector: 'smz-multi-select', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper grid grid-nogutter\">\r\n <ui-multi-select class=\"col-12 grid-nogutter smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4931
+ args: [{ selector: 'smz-multi-select', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper flex flex-wrap\">\r\n <ui-multi-select class=\"w-full m-0 smz__input_value flex-1\" [id]=\"input.propertyName\" [options]=\"input.options\" [formControl]=\"control\" optionLabel=\"name\" [placeholder]=\"input.defaultLabel\" [panelStyle]=\"{ minWidth: '20em' }\" appendTo=\"body\" [filter]=\"input.showFilter ? true : false\" [filterMatchMode]=\"input.filterMatchMode != null ? input.filterMatchMode : 'contains'\" (changed)=\"emitChange(input, formId, $event)\" [showClear]=\"input.showClear\" [emptyMessage]=\"input.emptyMessage\" [emptyFilterMessage]=\"input.emptyFilterMessage\" [autofocusFilter]=\"input.autofocusFilter\">\r\n </ui-multi-select>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4932
4932
  }], ctorParameters: () => [{ type: SmzFormsDropdownService }, { type: SmzFormsVisibilityService }, { type: SmzDialogsVisibilityService }], propDecorators: { input: [{
4933
4933
  type: Input
4934
4934
  }], formId: [{
@@ -4959,11 +4959,11 @@ class RadioButtonComponent {
4959
4959
  this.dialogVisibility.setValue(input, formId, event);
4960
4960
  }
4961
4961
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: RadioButtonComponent, deps: [{ token: SmzFormsVisibilityService }, { token: SmzDialogsVisibilityService }], target: i0.ɵɵFactoryTarget.Component });
4962
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: RadioButtonComponent, isStandalone: false, selector: "smz-radio-button", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, host: { classAttribute: "grid grid-nogutter" }, ngImport: i0, template: "<div class=\"flex flex-col col-12 input_inner__wrapper gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n @for (option of input.options; track option) {\r\n <ui-radio-button class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\" (clicked)=\"emitChange(input, formId, $event)\">\r\n </ui-radio-button>\r\n <label [for]=\"input.propertyName\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzRadioButtonComponent, selector: "ui-radio-button", inputs: ["value", "name", "label"], outputs: ["clicked"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4962
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: RadioButtonComponent, isStandalone: false, selector: "smz-radio-button", inputs: { input: "input", formId: "formId", control: "control", behaviors: "behaviors" }, host: { classAttribute: "flex flex-wrap" }, ngImport: i0, template: "<div class=\"flex flex-col w-full flex-none input_inner__wrapper gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"w-full flex-none flex justify-start items-center gap-1 -m-1 p-2\">\r\n @for (option of input.options; track option) {\r\n <ui-radio-button class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\" (clicked)=\"emitChange(input, formId, $event)\">\r\n </ui-radio-button>\r\n <label class=\"p-1\" [for]=\"input.propertyName\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i2.SmzRadioButtonComponent, selector: "ui-radio-button", inputs: ["value", "name", "label"], outputs: ["clicked"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
4963
4963
  }
4964
4964
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: RadioButtonComponent, decorators: [{
4965
4965
  type: Component,
4966
- args: [{ selector: 'smz-radio-button', host: { class: 'grid grid-nogutter' }, standalone: false, template: "<div class=\"flex flex-col col-12 input_inner__wrapper gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"col-12 flex justify-start items-center gap-1 flex-gap-1\">\r\n @for (option of input.options; track option) {\r\n <ui-radio-button class=\"smz__input_value\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\" (clicked)=\"emitChange(input, formId, $event)\">\r\n </ui-radio-button>\r\n <label [for]=\"input.propertyName\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4966
+ args: [{ selector: 'smz-radio-button', host: { class: 'flex flex-wrap' }, standalone: false, template: "<div class=\"flex flex-col w-full flex-none input_inner__wrapper gap-1\">\r\n <smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n </smz-label>\r\n <div class=\"w-full flex-none flex justify-start items-center gap-1 -m-1 p-2\">\r\n @for (option of input.options; track option) {\r\n <ui-radio-button class=\"smz__input_value p-1\" [name]=\"input.propertyName\" [id]=\"input.propertyName\" [value]=\"option.id\" [formControl]=\"control\" (clicked)=\"emitChange(input, formId, $event)\">\r\n </ui-radio-button>\r\n <label class=\"p-1\" [for]=\"input.propertyName\">{{option.name}}</label>\r\n }\r\n </div>\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\"></smz-validation-messages>\r\n</div>" }]
4967
4967
  }], ctorParameters: () => [{ type: SmzFormsVisibilityService }, { type: SmzDialogsVisibilityService }], propDecorators: { input: [{
4968
4968
  type: Input
4969
4969
  }], formId: [{
@@ -5247,7 +5247,7 @@ class SmzInputTagArea {
5247
5247
  };
5248
5248
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzInputTagArea, deps: [{ token: i1$1.NgModel, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
5249
5249
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzInputTagArea, isStandalone: false, selector: "smz-input-tag-area", inputs: { config: "config", rows: "rows", control: "control" }, viewQueries: [{ propertyName: "overlay", first: true, predicate: SmzPopoverComponent, descendants: true }, { propertyName: "inputElement", first: true, predicate: ["inputArea"], descendants: true }, { propertyName: "listboxElement", first: true, predicate: ["listbox"], descendants: true }], ngImport: i0, template: `
5250
- <textarea #inputArea id="inputArea" smzTextarea smzSmartTag [(ngModel)]="ngModel" [formControl]="control" [options]="config?.options" [rows]="rows" (tagTyped)="onTag($event)" class="col-12"></textarea>
5250
+ <textarea #inputArea id="inputArea" smzTextarea smzSmartTag [(ngModel)]="ngModel" [formControl]="control" [options]="config?.options" [rows]="rows" (tagTyped)="onTag($event)" class="w-full flex-none py-2"></textarea>
5251
5251
  <ui-popover #overlay appendTo="body" [style]="{width: '450px'}" (hidden)="onHideOverlay()" styleClass="tag-overlay">
5252
5252
  @if (currentTag) {
5253
5253
  <ui-listbox #listbox (clicked)="hide($event)" (keyup.enter)="hide($event)" styleClass="tag-dropdown" [options]="currentTag.data" [(ngModel)]="currentTagSelection" optionLabel="key"></ui-listbox>
@@ -5258,7 +5258,7 @@ class SmzInputTagArea {
5258
5258
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzInputTagArea, decorators: [{
5259
5259
  type: Component,
5260
5260
  args: [{ selector: 'smz-input-tag-area', template: `
5261
- <textarea #inputArea id="inputArea" smzTextarea smzSmartTag [(ngModel)]="ngModel" [formControl]="control" [options]="config?.options" [rows]="rows" (tagTyped)="onTag($event)" class="col-12"></textarea>
5261
+ <textarea #inputArea id="inputArea" smzTextarea smzSmartTag [(ngModel)]="ngModel" [formControl]="control" [options]="config?.options" [rows]="rows" (tagTyped)="onTag($event)" class="w-full flex-none py-2"></textarea>
5262
5262
  <ui-popover #overlay appendTo="body" [style]="{width: '450px'}" (hidden)="onHideOverlay()" styleClass="tag-overlay">
5263
5263
  @if (currentTag) {
5264
5264
  <ui-listbox #listbox (clicked)="hide($event)" (keyup.enter)="hide($event)" styleClass="tag-dropdown" [options]="currentTag.data" [(ngModel)]="currentTagSelection" optionLabel="key"></ui-listbox>
@@ -5604,11 +5604,11 @@ class InputTextButtonComponent {
5604
5604
  });
5605
5605
  }
5606
5606
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTextButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5607
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputTextButtonComponent, isStandalone: false, selector: "smz-input-text-button", inputs: { input: "input", control: "control", viewdata: "viewdata", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n\r\n <div class=\"p-inputgroup\">\r\n <input\r\n smzInputText\r\n class=\"col-12 smz__input_value flex-1\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [placeholder]=\"input.placeholder\"\r\n [formControl]=\"$any(control)\">\r\n <button type=\"button\" [disabled]=\"!control.valid || blocked\" smzButton class=\"min-w-fit mt-3\" [label]=\"input.label\" [icon]=\"input.icon\" styleClass=\"p-button-warn\" (click)=\"emit()\"></button>\r\n </div>\r\n\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\" [extraMessages]=\"input.buttonMessages\"></smz-validation-messages>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
5607
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InputTextButtonComponent, isStandalone: false, selector: "smz-input-text-button", inputs: { input: "input", control: "control", viewdata: "viewdata", behaviors: "behaviors" }, ngImport: i0, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n\r\n <div class=\"p-inputgroup\">\r\n <input\r\n smzInputText\r\n class=\"w-full smz__input_value flex-1 py-2\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [placeholder]=\"input.placeholder\"\r\n [formControl]=\"$any(control)\">\r\n <button type=\"button\" [disabled]=\"!control.valid || blocked\" smzButton class=\"min-w-fit mt-3\" [label]=\"input.label\" [icon]=\"input.icon\" styleClass=\"p-button-warn\" (click)=\"emit()\"></button>\r\n </div>\r\n\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\" [extraMessages]=\"input.buttonMessages\"></smz-validation-messages>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: LabelComponent, selector: "smz-label", inputs: ["text", "propertyName", "showLabel", "warning", "help", "popover"] }, { kind: "component", type: ValidationMessagesComponent, selector: "smz-validation-messages", inputs: ["input", "control", "behaviors", "extraMessages"] }] });
5608
5608
  }
5609
5609
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputTextButtonComponent, decorators: [{
5610
5610
  type: Component,
5611
- args: [{ selector: 'smz-input-text-button', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n\r\n <div class=\"p-inputgroup\">\r\n <input\r\n smzInputText\r\n class=\"col-12 smz__input_value flex-1\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [placeholder]=\"input.placeholder\"\r\n [formControl]=\"$any(control)\">\r\n <button type=\"button\" [disabled]=\"!control.valid || blocked\" smzButton class=\"min-w-fit mt-3\" [label]=\"input.label\" [icon]=\"input.icon\" styleClass=\"p-button-warn\" (click)=\"emit()\"></button>\r\n </div>\r\n\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\" [extraMessages]=\"input.buttonMessages\"></smz-validation-messages>\r\n\r\n</div>" }]
5611
+ args: [{ selector: 'smz-input-text-button', standalone: false, template: "<smz-label\r\n class=\"smz__input_name\"\r\n [text]=\"input.name\"\r\n [propertyName]=\"input.propertyName\"\r\n [showLabel]=\"input.hideName == false && input.hideLabel != true\"\r\n [warning]=\"input.warning?.()\"\r\n [help]=\"input.tooltip?.()\"\r\n [popover]=\"input.popover?.()\">\r\n</smz-label>\r\n\r\n<div class=\"input_inner__wrapper\">\r\n\r\n <div class=\"p-inputgroup\">\r\n <input\r\n smzInputText\r\n class=\"w-full smz__input_value flex-1 py-2\"\r\n [id]=\"input.propertyName\"\r\n type=\"text\"\r\n [placeholder]=\"input.placeholder\"\r\n [formControl]=\"$any(control)\">\r\n <button type=\"button\" [disabled]=\"!control.valid || blocked\" smzButton class=\"min-w-fit mt-3\" [label]=\"input.label\" [icon]=\"input.icon\" styleClass=\"p-button-warn\" (click)=\"emit()\"></button>\r\n </div>\r\n\r\n <smz-validation-messages [input]=\"input\" [control]=\"control\" [behaviors]=\"behaviors\" [extraMessages]=\"input.buttonMessages\"></smz-validation-messages>\r\n\r\n</div>" }]
5612
5612
  }], propDecorators: { input: [{
5613
5613
  type: Input
5614
5614
  }], control: [{
@@ -7145,9 +7145,9 @@ class InputListDialogCrudComponent {
7145
7145
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputListDialogCrudComponent, deps: [{ token: DialogCrudStateService }, { token: i2.SmzDialogConfig }], target: i0.ɵɵFactoryTarget.Component });
7146
7146
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: InputListDialogCrudComponent, isStandalone: false, selector: "smz-input-list-dialog-crud", viewQueries: [{ propertyName: "formComponent", first: true, predicate: ["formComponent"], descendants: true }], ngImport: i0, template: `
7147
7147
  @if (form != null) {
7148
- <div class="grid grid-nogutter items-start justify-start">
7149
- <smz-form-group class="col" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7150
- <div class="w-full grid grid-nogutter items-start justify-end">
7148
+ <div class="flex flex-wrap items-start justify-start">
7149
+ <smz-form-group class="flex-1" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7150
+ <div class="w-full flex flex-wrap items-start justify-end">
7151
7151
  <button smzButton (click)="confirm()" type="button" [disabled]="!formComponent.isValid" icon="fa-solid fa-check" label="Confirmar" styleClass="mr-2"></button>
7152
7152
  </div>
7153
7153
  </div>
@@ -7160,9 +7160,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
7160
7160
  selector: 'smz-input-list-dialog-crud',
7161
7161
  template: `
7162
7162
  @if (form != null) {
7163
- <div class="grid grid-nogutter items-start justify-start">
7164
- <smz-form-group class="col" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7165
- <div class="w-full grid grid-nogutter items-start justify-end">
7163
+ <div class="flex flex-wrap items-start justify-start">
7164
+ <smz-form-group class="flex-1" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7165
+ <div class="w-full flex flex-wrap items-start justify-end">
7166
7166
  <button smzButton (click)="confirm()" type="button" [disabled]="!formComponent.isValid" icon="fa-solid fa-check" label="Confirmar" styleClass="mr-2"></button>
7167
7167
  </div>
7168
7168
  </div>
@@ -7289,9 +7289,9 @@ class InputListBatchCrudComponent {
7289
7289
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InputListBatchCrudComponent, deps: [{ token: DialogCrudStateService }, { token: i2.SmzDialogConfig }], target: i0.ɵɵFactoryTarget.Component });
7290
7290
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: InputListBatchCrudComponent, isStandalone: false, selector: "smz-input-list-batch-crud", viewQueries: [{ propertyName: "formComponent", first: true, predicate: ["formComponent"], descendants: true }], ngImport: i0, template: `
7291
7291
  @if (form != null) {
7292
- <div class="grid grid-nogutter items-start justify-start">
7293
- <smz-form-group class="col" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7294
- <div class="w-full grid grid-nogutter items-start justify-end">
7292
+ <div class="flex flex-wrap items-start justify-start">
7293
+ <smz-form-group class="flex-1" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7294
+ <div class="w-full flex flex-wrap items-start justify-end">
7295
7295
  <button smzButton (click)="confirm()" type="button" [disabled]="!formComponent.isValid" icon="fa-solid fa-check" label="Confirmar" styleClass="mr-2"></button>
7296
7296
  </div>
7297
7297
  </div>
@@ -7304,9 +7304,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
7304
7304
  selector: 'smz-input-list-batch-crud',
7305
7305
  template: `
7306
7306
  @if (form != null) {
7307
- <div class="grid grid-nogutter items-start justify-start">
7308
- <smz-form-group class="col" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7309
- <div class="w-full grid grid-nogutter items-start justify-end">
7307
+ <div class="flex flex-wrap items-start justify-start">
7308
+ <smz-form-group class="flex-1" #formComponent [config]="form" clickStopPropagation></smz-form-group>
7309
+ <div class="w-full flex flex-wrap items-start justify-end">
7310
7310
  <button smzButton (click)="confirm()" type="button" [disabled]="!formComponent.isValid" icon="fa-solid fa-check" label="Confirmar" styleClass="mr-2"></button>
7311
7311
  </div>
7312
7312
  </div>
@@ -7440,11 +7440,11 @@ class FormSubmitComponent {
7440
7440
  this.dispose();
7441
7441
  }
7442
7442
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: FormSubmitComponent, deps: [{ token: SmzUiBlockService }], target: i0.ɵɵFactoryTarget.Component });
7443
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: FormSubmitComponent, isStandalone: false, selector: "smz-ui-form-submit", inputs: { form: "form", unBlockOnSave: "unBlockOnSave", useBlockUi: "useBlockUi", resetLabel: "resetLabel", resetStyleClass: "resetStyleClass", resetIcon: "resetIcon", saveLabel: "saveLabel", saveStyleClass: "saveStyleClass", saveIcon: "saveIcon" }, outputs: { save: "save" }, usesOnChanges: true, ngImport: i0, template: "@if (form != null && response != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <button smzButton smzRipple type=\"button\" [icon]=\"saveIcon\" [styleClass]=\"saveStyleClass\" [disabled]=\"!response.isValid || !response.hasUnsavedChanges\" (click)=\"submitSave()\" [label]=\"saveLabel\"></button>\r\n <button smzButton smzRipple type=\"button\" [icon]=\"resetIcon\" [styleClass]=\"resetStyleClass\" [disabled]=\"!response.hasUnsavedChanges\" (click)=\"cancel()\" [label]=\"resetLabel\"></button>\r\n </div>\r\n}", dependencies: [{ kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }] });
7443
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: FormSubmitComponent, isStandalone: false, selector: "smz-ui-form-submit", inputs: { form: "form", unBlockOnSave: "unBlockOnSave", useBlockUi: "useBlockUi", resetLabel: "resetLabel", resetStyleClass: "resetStyleClass", resetIcon: "resetIcon", saveLabel: "saveLabel", saveStyleClass: "saveStyleClass", saveIcon: "saveIcon" }, outputs: { save: "save" }, usesOnChanges: true, ngImport: i0, template: "@if (form != null && response != null) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <button smzButton smzRipple type=\"button\" [icon]=\"saveIcon\" [styleClass]=\"saveStyleClass\" [disabled]=\"!response.isValid || !response.hasUnsavedChanges\" (click)=\"submitSave()\" [label]=\"saveLabel\"></button>\r\n <button smzButton smzRipple type=\"button\" [icon]=\"resetIcon\" [styleClass]=\"resetStyleClass\" [disabled]=\"!response.hasUnsavedChanges\" (click)=\"cancel()\" [label]=\"resetLabel\"></button>\r\n </div>\r\n}", dependencies: [{ kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }] });
7444
7444
  }
7445
7445
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: FormSubmitComponent, decorators: [{
7446
7446
  type: Component,
7447
- args: [{ selector: 'smz-ui-form-submit', standalone: false, template: "@if (form != null && response != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <button smzButton smzRipple type=\"button\" [icon]=\"saveIcon\" [styleClass]=\"saveStyleClass\" [disabled]=\"!response.isValid || !response.hasUnsavedChanges\" (click)=\"submitSave()\" [label]=\"saveLabel\"></button>\r\n <button smzButton smzRipple type=\"button\" [icon]=\"resetIcon\" [styleClass]=\"resetStyleClass\" [disabled]=\"!response.hasUnsavedChanges\" (click)=\"cancel()\" [label]=\"resetLabel\"></button>\r\n </div>\r\n}" }]
7447
+ args: [{ selector: 'smz-ui-form-submit', standalone: false, template: "@if (form != null && response != null) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <button smzButton smzRipple type=\"button\" [icon]=\"saveIcon\" [styleClass]=\"saveStyleClass\" [disabled]=\"!response.isValid || !response.hasUnsavedChanges\" (click)=\"submitSave()\" [label]=\"saveLabel\"></button>\r\n <button smzButton smzRipple type=\"button\" [icon]=\"resetIcon\" [styleClass]=\"resetStyleClass\" [disabled]=\"!response.hasUnsavedChanges\" (click)=\"cancel()\" [label]=\"resetLabel\"></button>\r\n </div>\r\n}" }]
7448
7448
  }], ctorParameters: () => [{ type: SmzUiBlockService }], propDecorators: { form: [{
7449
7449
  type: Input
7450
7450
  }], unBlockOnSave: [{
@@ -9261,11 +9261,11 @@ class DialogFooterComponent {
9261
9261
  return response;
9262
9262
  }
9263
9263
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: DialogFooterComponent, deps: [{ token: DynamicDialogRef }, { token: SmzDynamicDialogConfig }, { token: SmzDialogsVisibilityService }, { token: InjectComponentService }, { token: i0.ChangeDetectorRef }, { token: i1$3.Actions }, { token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
9264
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: DialogFooterComponent, isStandalone: false, selector: "smz-dialog-footer", ngImport: i0, template: "@if (dialogConfig.data._context; as context) {\r\n <ui-toolbar class=\"smz-dialog-footer\">\r\n <div class=\"grid grid-nogutter items-center justify-end gap-2\">\r\n @if (context.customButtonsOrder == null || context.customButtonsOrder === 'first') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n @if (context.behaviors.showCancelButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('cancel')\" [label]=\"context.builtInButtons.cancelName\" [styleClass]=\"context.builtInButtons.cancelClass\" (click)=\"close()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showConfirmButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('confirm')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.confirmName\" [styleClass]=\"context.builtInButtons.confirmClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"confirm()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showOkButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('ok')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.okName\" [styleClass]=\"context.builtInButtons.okClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"ok()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showSaveButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('save')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.saveName\" [styleClass]=\"context.builtInButtons.saveClass\" [icon]=\"context.isLoading ? 'fa-solid fa-spinner fa-spin' : ''\" [disabled]=\"context.isGlobalDisabled\" (click)=\"save()\">\r\n </button>\r\n }\r\n @if (context.customButtonsOrder === 'last') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n <!-- DependsOnValidation -->\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i0.forwardRef(() => i2.SmzButtonComponent), selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i0.forwardRef(() => i2.SmzToolbarComponent), selector: "ui-toolbar" }, { kind: "directive", type: i0.forwardRef(() => i2.SmzTooltipDirective), selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: i0.forwardRef(() => ConfirmOnEnterDirective), selector: "[confirmOnEnter]", inputs: ["confirmOnEnter", "clickEvent", "delayConfirmation", "disabled", "dialogId"] }], encapsulation: i0.ViewEncapsulation.None });
9264
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: DialogFooterComponent, isStandalone: false, selector: "smz-dialog-footer", ngImport: i0, template: "@if (dialogConfig.data._context; as context) {\r\n <ui-toolbar class=\"smz-dialog-footer\">\r\n <div class=\"flex flex-wrap items-center justify-end gap-2\">\r\n @if (context.customButtonsOrder == null || context.customButtonsOrder === 'first') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n @if (context.behaviors.showCancelButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('cancel')\" [label]=\"context.builtInButtons.cancelName\" [styleClass]=\"context.builtInButtons.cancelClass\" (click)=\"close()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showConfirmButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('confirm')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.confirmName\" [styleClass]=\"context.builtInButtons.confirmClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"confirm()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showOkButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('ok')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.okName\" [styleClass]=\"context.builtInButtons.okClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"ok()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showSaveButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('save')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.saveName\" [styleClass]=\"context.builtInButtons.saveClass\" [icon]=\"context.isLoading ? 'fa-solid fa-spinner fa-spin' : ''\" [disabled]=\"context.isGlobalDisabled\" (click)=\"save()\">\r\n </button>\r\n }\r\n @if (context.customButtonsOrder === 'last') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n <!-- DependsOnValidation -->\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}\r\n", styles: [""], dependencies: [{ kind: "component", type: i0.forwardRef(() => i2.SmzButtonComponent), selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i0.forwardRef(() => i2.SmzToolbarComponent), selector: "ui-toolbar" }, { kind: "directive", type: i0.forwardRef(() => i2.SmzTooltipDirective), selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: i0.forwardRef(() => ConfirmOnEnterDirective), selector: "[confirmOnEnter]", inputs: ["confirmOnEnter", "clickEvent", "delayConfirmation", "disabled", "dialogId"] }], encapsulation: i0.ViewEncapsulation.None });
9265
9265
  }
9266
9266
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: DialogFooterComponent, decorators: [{
9267
9267
  type: Component,
9268
- args: [{ selector: 'smz-dialog-footer', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (dialogConfig.data._context; as context) {\r\n <ui-toolbar class=\"smz-dialog-footer\">\r\n <div class=\"grid grid-nogutter items-center justify-end gap-2\">\r\n @if (context.customButtonsOrder == null || context.customButtonsOrder === 'first') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n @if (context.behaviors.showCancelButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('cancel')\" [label]=\"context.builtInButtons.cancelName\" [styleClass]=\"context.builtInButtons.cancelClass\" (click)=\"close()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showConfirmButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('confirm')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.confirmName\" [styleClass]=\"context.builtInButtons.confirmClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"confirm()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showOkButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('ok')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.okName\" [styleClass]=\"context.builtInButtons.okClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"ok()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showSaveButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('save')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.saveName\" [styleClass]=\"context.builtInButtons.saveClass\" [icon]=\"context.isLoading ? 'fa-solid fa-spinner fa-spin' : ''\" [disabled]=\"context.isGlobalDisabled\" (click)=\"save()\">\r\n </button>\r\n }\r\n @if (context.customButtonsOrder === 'last') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n <!-- DependsOnValidation -->\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}\r\n" }]
9268
+ args: [{ selector: 'smz-dialog-footer', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (dialogConfig.data._context; as context) {\r\n <ui-toolbar class=\"smz-dialog-footer\">\r\n <div class=\"flex flex-wrap items-center justify-end gap-2\">\r\n @if (context.customButtonsOrder == null || context.customButtonsOrder === 'first') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n @if (context.behaviors.showCancelButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('cancel')\" [label]=\"context.builtInButtons.cancelName\" [styleClass]=\"context.builtInButtons.cancelClass\" (click)=\"close()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showConfirmButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('confirm')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.confirmName\" [styleClass]=\"context.builtInButtons.confirmClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"confirm()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showOkButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('ok')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.okName\" [styleClass]=\"context.builtInButtons.okClass\" [disabled]=\"context.isGlobalDisabled\" (click)=\"ok()\">\r\n </button>\r\n }\r\n <!-- DependsOnValidation -->\r\n @if (context.behaviors.showSaveButton) {\r\n <button smzButton [attr.data-testid]=\"buildDialogTestId('save')\" [confirmOnEnter]=\"context.isLoading ? false : context.behaviors.confirmOnEnter\" [dialogId]=\"context.id\" [label]=\"context.builtInButtons.saveName\" [styleClass]=\"context.builtInButtons.saveClass\" [icon]=\"context.isLoading ? 'fa-solid fa-spinner fa-spin' : ''\" [disabled]=\"context.isGlobalDisabled\" (click)=\"save()\">\r\n </button>\r\n }\r\n @if (context.customButtonsOrder === 'last') {\r\n @for (customButton of context.customButtons; track customButton) {\r\n <!-- DependsOnValidation -->\r\n @if (customButton.visible == null || customButton.visible) {\r\n <button smzButton [attr.data-testid]=\"buildCustomButtonTestId(customButton)\" [label]=\"customButton.name\" [styleClass]=\"customButton.class\" [disabled]=\"context.isGlobalDisabled || customButton.dependsOnValidation && !isValid() || customButton.disabled\" [smzTooltip]=\"customButton.tooltip\" tooltipPosition=\"top\" (click)=\"customClick(customButton)\">\r\n </button>\r\n }\r\n }\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}\r\n" }]
9269
9269
  }], ctorParameters: () => [{ type: DynamicDialogRef }, { type: SmzDynamicDialogConfig }, { type: SmzDialogsVisibilityService }, { type: InjectComponentService }, { type: i0.ChangeDetectorRef }, { type: i1$3.Actions }, { type: i1$3.Store }] });
9270
9270
  class ConfirmOnEnterDirective {
9271
9271
  el;
@@ -9488,7 +9488,7 @@ class TableFormsService {
9488
9488
  this.state.columns
9489
9489
  .filter(c => c.editable.type !== SmzEditableType.NONE)
9490
9490
  .forEach(col => {
9491
- // console.log('col', col);
9491
+ // console.log('flex-1', col);
9492
9492
  // VALOR
9493
9493
  const value = SmzObjectUtils.resolveFieldData(row, col.editable.property);
9494
9494
  // CRIAR VALIDADORES COM BASE NA CONFIGURAÇÃO DA COLUNA
@@ -17084,7 +17084,7 @@ class ColumnFilter {
17084
17084
  <div class="p-column-filter" [ngClass]="{ 'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu' }">
17085
17085
  @if (display === 'row') {
17086
17086
  <p-columnFilterFormElement
17087
- class="p-fluid"
17087
+ class=""
17088
17088
  [type]="type"
17089
17089
  [field]="field"
17090
17090
  [filterConstraint]="$any(dt.filters[field])"
@@ -17124,7 +17124,7 @@ class ColumnFilter {
17124
17124
  }
17125
17125
  @if (showMenu && overlayVisible) {
17126
17126
  <div
17127
- [ngClass]="{ 'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu' }"
17127
+ [ngClass]="{ 'p-column-filter-overlay p-component': true, 'p-column-filter-overlay-menu': display === 'menu' }"
17128
17128
  (click)="onContentClick()"
17129
17129
  [@overlayAnimation]="'visible'"
17130
17130
  (@overlayAnimation.start)="onOverlayAnimationStart($event)"
@@ -17214,7 +17214,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
17214
17214
  <div class="p-column-filter" [ngClass]="{ 'p-column-filter-row': display === 'row', 'p-column-filter-menu': display === 'menu' }">
17215
17215
  @if (display === 'row') {
17216
17216
  <p-columnFilterFormElement
17217
- class="p-fluid"
17217
+ class=""
17218
17218
  [type]="type"
17219
17219
  [field]="field"
17220
17220
  [filterConstraint]="$any(dt.filters[field])"
@@ -17254,7 +17254,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
17254
17254
  }
17255
17255
  @if (showMenu && overlayVisible) {
17256
17256
  <div
17257
- [ngClass]="{ 'p-column-filter-overlay p-component p-fluid': true, 'p-column-filter-overlay-menu': display === 'menu' }"
17257
+ [ngClass]="{ 'p-column-filter-overlay p-component': true, 'p-column-filter-overlay-menu': display === 'menu' }"
17258
17258
  (click)="onContentClick()"
17259
17259
  [@overlayAnimation]="'visible'"
17260
17260
  (@overlayAnimation.start)="onOverlayAnimationStart($event)"
@@ -17790,11 +17790,11 @@ class SmzDataInfoComponent {
17790
17790
  });
17791
17791
  }
17792
17792
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDataInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17793
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDataInfoComponent, isStandalone: false, selector: "smz-data-info", inputs: { image: "image", message: "message", actions: "actions", callbackInfo: "callbackInfo", callbackLabel: "callbackLabel" }, outputs: { clicked: "clicked" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "<div class=\"grid justify-center items-center p-4 m-0 h-full w-full text-center\">\r\n <div class=\"col-10 md:col-8 grid grid-nogutter flex-col items-center justify-center\">\r\n\r\n @if (image != null && image !== '') {\r\n <img [src]=\"image\" class=\"img-fluid\" width=\"60%\" [ngStyle]=\"{ 'max-width': '250px' }\" />\r\n }\r\n <h3 class=\"mt-2\">{{ message }}</h3>\r\n @if (callbackInfo != null) {\r\n <div class=\"mb-2\" [innerHtml]=\"callbackInfo\"></div>\r\n }\r\n\r\n <div class=\"grid grid-nogutter items-center justify-center mt-2 gap-2\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: { } }\"></ng-container>\r\n @if (callbackLabel != null) {\r\n <button smzButton type=\"button\" [label]=\"callbackLabel\" (click)=\"clicked.emit($event)\"></button>\r\n }\r\n @if (actions) {\r\n @for (action of actions; track action) {\r\n <button smzButton type=\"button\" [label]=\"action.label\" [icon]=\"action.icon\" (click)=\"action.callback($event)\"></button>\r\n }\r\n }\r\n </div>\r\n\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }] });
17793
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDataInfoComponent, isStandalone: false, selector: "smz-data-info", inputs: { image: "image", message: "message", actions: "actions", callbackInfo: "callbackInfo", callbackLabel: "callbackLabel" }, outputs: { clicked: "clicked" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "<div class=\"flex flex-wrap justify-center items-center p-4 m-0 h-full w-full text-center\">\r\n <div class=\"w-10/12 flex-none md:w-8/12 flex flex-wrap flex-col items-center justify-center p-2\">\r\n\r\n @if (image != null && image !== '') {\r\n <img [src]=\"image\" class=\"img-fluid\" width=\"60%\" [ngStyle]=\"{ 'max-width': '250px' }\" />\r\n }\r\n <h3 class=\"mt-2\">{{ message }}</h3>\r\n @if (callbackInfo != null) {\r\n <div class=\"mb-2\" [innerHtml]=\"callbackInfo\"></div>\r\n }\r\n\r\n <div class=\"flex flex-wrap items-center justify-center mt-2 gap-2\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: { } }\"></ng-container>\r\n @if (callbackLabel != null) {\r\n <button smzButton type=\"button\" [label]=\"callbackLabel\" (click)=\"clicked.emit($event)\"></button>\r\n }\r\n @if (actions) {\r\n @for (action of actions; track action) {\r\n <button smzButton type=\"button\" [label]=\"action.label\" [icon]=\"action.icon\" (click)=\"action.callback($event)\"></button>\r\n }\r\n }\r\n </div>\r\n\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }] });
17794
17794
  }
17795
17795
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDataInfoComponent, decorators: [{
17796
17796
  type: Component,
17797
- args: [{ selector: 'smz-data-info', standalone: false, template: "<div class=\"grid justify-center items-center p-4 m-0 h-full w-full text-center\">\r\n <div class=\"col-10 md:col-8 grid grid-nogutter flex-col items-center justify-center\">\r\n\r\n @if (image != null && image !== '') {\r\n <img [src]=\"image\" class=\"img-fluid\" width=\"60%\" [ngStyle]=\"{ 'max-width': '250px' }\" />\r\n }\r\n <h3 class=\"mt-2\">{{ message }}</h3>\r\n @if (callbackInfo != null) {\r\n <div class=\"mb-2\" [innerHtml]=\"callbackInfo\"></div>\r\n }\r\n\r\n <div class=\"grid grid-nogutter items-center justify-center mt-2 gap-2\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: { } }\"></ng-container>\r\n @if (callbackLabel != null) {\r\n <button smzButton type=\"button\" [label]=\"callbackLabel\" (click)=\"clicked.emit($event)\"></button>\r\n }\r\n @if (actions) {\r\n @for (action of actions; track action) {\r\n <button smzButton type=\"button\" [label]=\"action.label\" [icon]=\"action.icon\" (click)=\"action.callback($event)\"></button>\r\n }\r\n }\r\n </div>\r\n\r\n </div>\r\n</div>" }]
17797
+ args: [{ selector: 'smz-data-info', standalone: false, template: "<div class=\"flex flex-wrap justify-center items-center p-4 m-0 h-full w-full text-center\">\r\n <div class=\"w-10/12 flex-none md:w-8/12 flex flex-wrap flex-col items-center justify-center p-2\">\r\n\r\n @if (image != null && image !== '') {\r\n <img [src]=\"image\" class=\"img-fluid\" width=\"60%\" [ngStyle]=\"{ 'max-width': '250px' }\" />\r\n }\r\n <h3 class=\"mt-2\">{{ message }}</h3>\r\n @if (callbackInfo != null) {\r\n <div class=\"mb-2\" [innerHtml]=\"callbackInfo\"></div>\r\n }\r\n\r\n <div class=\"flex flex-wrap items-center justify-center mt-2 gap-2\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: { } }\"></ng-container>\r\n @if (callbackLabel != null) {\r\n <button smzButton type=\"button\" [label]=\"callbackLabel\" (click)=\"clicked.emit($event)\"></button>\r\n }\r\n @if (actions) {\r\n @for (action of actions; track action) {\r\n <button smzButton type=\"button\" [label]=\"action.label\" [icon]=\"action.icon\" (click)=\"action.callback($event)\"></button>\r\n }\r\n }\r\n </div>\r\n\r\n </div>\r\n</div>" }]
17798
17798
  }], propDecorators: { templates: [{
17799
17799
  type: ContentChildren,
17800
17800
  args: [SmzTemplateDirective]
@@ -18037,11 +18037,11 @@ class SmzMenuComponent {
18037
18037
  });
18038
18038
  }
18039
18039
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18040
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzMenuComponent, isStandalone: false, selector: "smz-menu", inputs: { items: "items", callback: "callback", data: "data", buttonClass: "buttonClass", styleClass: "styleClass", icon: "icon", behavior: "behavior", testId: "testId" }, ngImport: i0, template: "\r\n@switch (behavior) {\r\n @case ('overlay') {\r\n <ui-menu #actionMenu [popup]=\"true\" [model]=\"menuItems\" appendTo=\"body\"></ui-menu>\r\n <button smzButton id=\"action-button\" type=\"button\" [attr.data-testid]=\"testId\" [styleClass]=\"[buttonClass, styleClass]\" [icon]=\"icon\" (click)=\"toggle($event, actionMenu)\"></button>\r\n }\r\n @case ('inline') {\r\n <div class=\"grid grid-nogutter items-center justify-start\">\r\n @for (item of (items | smzFlattenMenu : data); track item) {\r\n @if (item.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"item\" [data]=\"data\" [icon]=\"item.icon\" [styleClass]=\"item.styleClass\" [disabled]=\"item.disabled\" [smzTooltip]=\"item.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n}\r\n", dependencies: [{ kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzMenuListComponent, selector: "ui-menu", inputs: ["model", "popup", "style", "styleClass", "autoZIndex", "appendTo", "baseZIndex"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: SmzMenuItemActionsDirective, selector: "[smzMenuItemAction]", inputs: ["item", "data"], outputs: ["collapse"] }, { kind: "pipe", type: SmzFlattenMenuPipe, name: "smzFlattenMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18040
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzMenuComponent, isStandalone: false, selector: "smz-menu", inputs: { items: "items", callback: "callback", data: "data", buttonClass: "buttonClass", styleClass: "styleClass", icon: "icon", behavior: "behavior", testId: "testId" }, ngImport: i0, template: "\r\n@switch (behavior) {\r\n @case ('overlay') {\r\n <ui-menu #actionMenu [popup]=\"true\" [model]=\"menuItems\" appendTo=\"body\"></ui-menu>\r\n <button smzButton id=\"action-button\" type=\"button\" [attr.data-testid]=\"testId\" [styleClass]=\"[buttonClass, styleClass]\" [icon]=\"icon\" (click)=\"toggle($event, actionMenu)\"></button>\r\n }\r\n @case ('inline') {\r\n <div class=\"flex flex-wrap items-center justify-start\">\r\n @for (item of (items | smzFlattenMenu : data); track item) {\r\n @if (item.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"item\" [data]=\"data\" [icon]=\"item.icon\" [styleClass]=\"item.styleClass\" [disabled]=\"item.disabled\" [smzTooltip]=\"item.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n}\r\n", dependencies: [{ kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzMenuListComponent, selector: "ui-menu", inputs: ["model", "popup", "style", "styleClass", "autoZIndex", "appendTo", "baseZIndex"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: SmzMenuItemActionsDirective, selector: "[smzMenuItemAction]", inputs: ["item", "data"], outputs: ["collapse"] }, { kind: "pipe", type: SmzFlattenMenuPipe, name: "smzFlattenMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18041
18041
  }
18042
18042
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzMenuComponent, decorators: [{
18043
18043
  type: Component,
18044
- args: [{ selector: 'smz-menu', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n@switch (behavior) {\r\n @case ('overlay') {\r\n <ui-menu #actionMenu [popup]=\"true\" [model]=\"menuItems\" appendTo=\"body\"></ui-menu>\r\n <button smzButton id=\"action-button\" type=\"button\" [attr.data-testid]=\"testId\" [styleClass]=\"[buttonClass, styleClass]\" [icon]=\"icon\" (click)=\"toggle($event, actionMenu)\"></button>\r\n }\r\n @case ('inline') {\r\n <div class=\"grid grid-nogutter items-center justify-start\">\r\n @for (item of (items | smzFlattenMenu : data); track item) {\r\n @if (item.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"item\" [data]=\"data\" [icon]=\"item.icon\" [styleClass]=\"item.styleClass\" [disabled]=\"item.disabled\" [smzTooltip]=\"item.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n}\r\n" }]
18044
+ args: [{ selector: 'smz-menu', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n@switch (behavior) {\r\n @case ('overlay') {\r\n <ui-menu #actionMenu [popup]=\"true\" [model]=\"menuItems\" appendTo=\"body\"></ui-menu>\r\n <button smzButton id=\"action-button\" type=\"button\" [attr.data-testid]=\"testId\" [styleClass]=\"[buttonClass, styleClass]\" [icon]=\"icon\" (click)=\"toggle($event, actionMenu)\"></button>\r\n }\r\n @case ('inline') {\r\n <div class=\"flex flex-wrap items-center justify-start\">\r\n @for (item of (items | smzFlattenMenu : data); track item) {\r\n @if (item.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"item\" [data]=\"data\" [icon]=\"item.icon\" [styleClass]=\"item.styleClass\" [disabled]=\"item.disabled\" [smzTooltip]=\"item.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n}\r\n" }]
18045
18045
  }], propDecorators: { items: [{
18046
18046
  type: Input
18047
18047
  }], callback: [{
@@ -18344,11 +18344,11 @@ class SmzTableContentActionsComponent {
18344
18344
  constructor() { }
18345
18345
  ngOnInit() { }
18346
18346
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableContentActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18347
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableContentActionsComponent, isStandalone: false, selector: "smz-table-content-actions", inputs: { col: "col", contentTypes: "contentTypes", item: "item", rowIndex: "rowIndex" }, host: { classAttribute: "grid grid-nogutter items-center justify-start gap-2" }, ngImport: i0, template: "@for (action of col.actions; track action.icon) {\r\n @if (action.condition(item)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(item)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(item) : null\"></i>\r\n }\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }] });
18347
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableContentActionsComponent, isStandalone: false, selector: "smz-table-content-actions", inputs: { col: "col", contentTypes: "contentTypes", item: "item", rowIndex: "rowIndex" }, host: { classAttribute: "flex flex-wrap items-center justify-start gap-2" }, ngImport: i0, template: "@for (action of col.actions; track action.icon) {\r\n @if (action.condition(item)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(item)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(item) : null\"></i>\r\n }\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }] });
18348
18348
  }
18349
18349
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableContentActionsComponent, decorators: [{
18350
18350
  type: Component,
18351
- args: [{ selector: 'smz-table-content-actions', host: { class: 'grid grid-nogutter items-center justify-start gap-2' }, standalone: false, template: "@for (action of col.actions; track action.icon) {\r\n @if (action.condition(item)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(item)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(item) : null\"></i>\r\n }\r\n}" }]
18351
+ args: [{ selector: 'smz-table-content-actions', host: { class: 'flex flex-wrap items-center justify-start gap-2' }, standalone: false, template: "@for (action of col.actions; track action.icon) {\r\n @if (action.condition(item)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(item)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(item) : null\"></i>\r\n }\r\n}" }]
18352
18352
  }], ctorParameters: () => [], propDecorators: { col: [{
18353
18353
  type: Input
18354
18354
  }], contentTypes: [{
@@ -18480,11 +18480,11 @@ class SmzTableCaptionButtonsComponent {
18480
18480
  return buildSmzTableTestId(this.tableTestId, `caption-${key}`);
18481
18481
  }
18482
18482
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableCaptionButtonsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18483
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableCaptionButtonsComponent, isStandalone: false, selector: "smz-table-caption-buttons", inputs: { buttons: "buttons", tableTestId: "tableTestId" }, host: { classAttribute: "grid grid-nogutter items-center justify-start gap-2" }, ngImport: i0, template: "@for (action of buttons; track action.label) {\r\n @if (action.visibilityCondition()) {\r\n <button smzButton type=\"button\" [attr.data-testid]=\"buildCaptionButtonTestId(action)\" [styleClass]=\"action.styleClass\" [icon]=\"action.icon\" [label]=\"action.label\" (click)=\"action.callback()\" [disabled]=\"!(action.activationCondition() && action.claimsWithAccess | rbkCanAccess)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip() : null\"></button>\r\n }\r\n}\r\n", dependencies: [{ kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: RbkCanAccessPipe, name: "rbkCanAccess" }] });
18483
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableCaptionButtonsComponent, isStandalone: false, selector: "smz-table-caption-buttons", inputs: { buttons: "buttons", tableTestId: "tableTestId" }, host: { classAttribute: "flex flex-wrap items-center justify-start gap-2" }, ngImport: i0, template: "@for (action of buttons; track action.label) {\r\n @if (action.visibilityCondition()) {\r\n <button smzButton type=\"button\" [attr.data-testid]=\"buildCaptionButtonTestId(action)\" [styleClass]=\"action.styleClass\" [icon]=\"action.icon\" [label]=\"action.label\" (click)=\"action.callback()\" [disabled]=\"!(action.activationCondition() && action.claimsWithAccess | rbkCanAccess)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip() : null\"></button>\r\n }\r\n}\r\n", dependencies: [{ kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "pipe", type: RbkCanAccessPipe, name: "rbkCanAccess" }] });
18484
18484
  }
18485
18485
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableCaptionButtonsComponent, decorators: [{
18486
18486
  type: Component,
18487
- args: [{ selector: 'smz-table-caption-buttons', host: { class: 'grid grid-nogutter items-center justify-start gap-2' }, standalone: false, template: "@for (action of buttons; track action.label) {\r\n @if (action.visibilityCondition()) {\r\n <button smzButton type=\"button\" [attr.data-testid]=\"buildCaptionButtonTestId(action)\" [styleClass]=\"action.styleClass\" [icon]=\"action.icon\" [label]=\"action.label\" (click)=\"action.callback()\" [disabled]=\"!(action.activationCondition() && action.claimsWithAccess | rbkCanAccess)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip() : null\"></button>\r\n }\r\n}\r\n" }]
18487
+ args: [{ selector: 'smz-table-caption-buttons', host: { class: 'flex flex-wrap items-center justify-start gap-2' }, standalone: false, template: "@for (action of buttons; track action.label) {\r\n @if (action.visibilityCondition()) {\r\n <button smzButton type=\"button\" [attr.data-testid]=\"buildCaptionButtonTestId(action)\" [styleClass]=\"action.styleClass\" [icon]=\"action.icon\" [label]=\"action.label\" (click)=\"action.callback()\" [disabled]=\"!(action.activationCondition() && action.claimsWithAccess | rbkCanAccess)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip() : null\"></button>\r\n }\r\n}\r\n" }]
18488
18488
  }], ctorParameters: () => [], propDecorators: { buttons: [{
18489
18489
  type: Input
18490
18490
  }], tableTestId: [{
@@ -18497,11 +18497,11 @@ class SmzTableHeaderActionsComponent {
18497
18497
  constructor() { }
18498
18498
  ngOnInit() { }
18499
18499
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableHeaderActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18500
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableHeaderActionsComponent, isStandalone: false, selector: "smz-table-header-actions", inputs: { col: "col" }, host: { classAttribute: "grid grid-nogutter items-center justify-start gap-2" }, ngImport: i0, template: "@for (action of col.headerActions; track action.icon) {\r\n @if (action.condition(col)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(col)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(col) : null\"></i>\r\n }\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }] });
18500
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableHeaderActionsComponent, isStandalone: false, selector: "smz-table-header-actions", inputs: { col: "col" }, host: { classAttribute: "flex flex-wrap items-center justify-start gap-2" }, ngImport: i0, template: "@for (action of col.headerActions; track action.icon) {\r\n @if (action.condition(col)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(col)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(col) : null\"></i>\r\n }\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }] });
18501
18501
  }
18502
18502
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableHeaderActionsComponent, decorators: [{
18503
18503
  type: Component,
18504
- args: [{ selector: 'smz-table-header-actions', host: { class: 'grid grid-nogutter items-center justify-start gap-2' }, standalone: false, template: "@for (action of col.headerActions; track action.icon) {\r\n @if (action.condition(col)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(col)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(col) : null\"></i>\r\n }\r\n}" }]
18504
+ args: [{ selector: 'smz-table-header-actions', host: { class: 'flex flex-wrap items-center justify-start gap-2' }, standalone: false, template: "@for (action of col.headerActions; track action.icon) {\r\n @if (action.condition(col)) {\r\n <i [ngClass]=\"action.icon + ' ' + action.styleClass\" class=\"cursor-pointer\" (click)=\"action.callback(col)\" [smzTooltip]=\"action.tooltip != null ? action.tooltip(col) : null\"></i>\r\n }\r\n}" }]
18505
18505
  }], ctorParameters: () => [], propDecorators: { col: [{
18506
18506
  type: Input
18507
18507
  }] } });
@@ -18523,7 +18523,7 @@ class SmzTableContextPipe {
18523
18523
  const contextColumn = {
18524
18524
  ...column,
18525
18525
  width,
18526
- content: column.content ?? { type: SmzContentType.TEXT, contentStyleClass: 'grid grid-nogutter items-center justify-start gap-2', styleClass: '', data: {}, ngStyle: {} },
18526
+ content: column.content ?? { type: SmzContentType.TEXT, contentStyleClass: 'flex flex-wrap items-center justify-start gap-2', styleClass: '', data: {}, ngStyle: {} },
18527
18527
  filter: column.filter ?? { type: SmzFilterType.NONE, isGlobalFilterable: false }
18528
18528
  };
18529
18529
  if (column.content != null) {
@@ -18754,7 +18754,7 @@ const ContentConvertions = [
18754
18754
  isOrderable: true,
18755
18755
  isGlobalFilterable: true,
18756
18756
  filterType: SmzFilterType.TEXT,
18757
- content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'grid grid-nogutter items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18757
+ content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'flex flex-wrap items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18758
18758
  editable: (input) => ({
18759
18759
  property: input.propertyName,
18760
18760
  type: SmzEditableType.TEXT,
@@ -18770,7 +18770,7 @@ const ContentConvertions = [
18770
18770
  isOrderable: false,
18771
18771
  isGlobalFilterable: true,
18772
18772
  filterType: SmzFilterType.MULTI_SELECT,
18773
- content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'grid grid-nogutter items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18773
+ content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'flex flex-wrap items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18774
18774
  editable: (input) => ({
18775
18775
  property: input.propertyName,
18776
18776
  type: SmzEditableType.DROPDOWN,
@@ -18786,7 +18786,7 @@ const ContentConvertions = [
18786
18786
  isOrderable: true,
18787
18787
  isGlobalFilterable: true,
18788
18788
  filterType: SmzFilterType.TEXT,
18789
- content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'grid grid-nogutter items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18789
+ content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'flex flex-wrap items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18790
18790
  editable: (input) => ({
18791
18791
  property: input.propertyName,
18792
18792
  type: SmzEditableType.AREA,
@@ -18802,7 +18802,7 @@ const ContentConvertions = [
18802
18802
  isOrderable: true,
18803
18803
  isGlobalFilterable: true,
18804
18804
  filterType: SmzFilterType.DATE,
18805
- content: () => ({ type: SmzContentType.CALENDAR, contentStyleClass: 'grid grid-nogutter items-center justify-start gap-2', styleClass: '', data: { format: 'shortDate' }, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18805
+ content: () => ({ type: SmzContentType.CALENDAR, contentStyleClass: 'flex flex-wrap items-center justify-start gap-2', styleClass: '', data: { format: 'shortDate' }, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18806
18806
  editable: (input) => ({
18807
18807
  property: input.propertyName,
18808
18808
  type: SmzEditableType.CALENDAR,
@@ -18818,7 +18818,7 @@ const ContentConvertions = [
18818
18818
  isOrderable: true,
18819
18819
  isGlobalFilterable: true,
18820
18820
  filterType: SmzFilterType.BOOLEAN,
18821
- content: () => ({ type: SmzContentType.ICON, contentStyleClass: 'grid grid-nogutter items-center justify-start', styleClass: '', data: {
18821
+ content: () => ({ type: SmzContentType.ICON, contentStyleClass: 'flex flex-wrap items-center justify-start', styleClass: '', data: {
18822
18822
  matches: [
18823
18823
  { icon: 'fa-solid fa-toggle-on', class: 'text-green-500', value: true },
18824
18824
  { icon: 'fa-solid fa-toggle-off', class: 'text-gray-300', value: false }
@@ -18839,7 +18839,7 @@ const ContentConvertions = [
18839
18839
  isOrderable: true,
18840
18840
  isGlobalFilterable: true,
18841
18841
  filterType: SmzFilterType.BOOLEAN,
18842
- content: () => ({ type: SmzContentType.ICON, contentStyleClass: 'grid grid-nogutter items-center justify-start', styleClass: '', data: {
18842
+ content: () => ({ type: SmzContentType.ICON, contentStyleClass: 'flex flex-wrap items-center justify-start', styleClass: '', data: {
18843
18843
  matches: [
18844
18844
  { icon: 'fa-solid fa-toggle-on', class: 'text-green-500', value: true },
18845
18845
  { icon: 'fa-solid fa-toggle-off', class: 'text-gray-300', value: false }
@@ -18860,7 +18860,7 @@ const ContentConvertions = [
18860
18860
  isOrderable: true,
18861
18861
  isGlobalFilterable: true,
18862
18862
  filterType: SmzFilterType.NUMERIC,
18863
- content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'grid grid-nogutter items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18863
+ content: () => ({ type: SmzContentType.TEXT, contentStyleClass: 'flex flex-wrap items-center justify-start gap-2', styleClass: '', data: null, ngStyle: {}, exportAs: null, exportSource: SmzExportableContentSource.DATA }),
18864
18864
  editable: (input) => ({
18865
18865
  property: input.propertyName,
18866
18866
  type: SmzEditableType.NUMBER,
@@ -19350,7 +19350,7 @@ class SmzBaseColumnBuilder {
19350
19350
  hasSubTotal: false,
19351
19351
  content: {
19352
19352
  type: type,
19353
- contentStyleClass: 'grid grid-nogutter items-center justify-start gap-2',
19353
+ contentStyleClass: 'flex flex-wrap items-center justify-start gap-2',
19354
19354
  styleClass: '',
19355
19355
  data: { matches: [] },
19356
19356
  ngStyle: {},
@@ -19509,7 +19509,7 @@ class SmzBaseColumnBuilder {
19509
19509
  throw Error(`You can´t set more than one column with the same field name. ${this.columnRef.field}`);
19510
19510
  }
19511
19511
  if (this.columnRef.actions.length > 0 && this.columnRef.actionsAlignment === 'begin') {
19512
- this.columnRef.content.styleClass += ' col grid grid-nogutter items-center justify-start';
19512
+ this.columnRef.content.styleClass += ' flex-1 flex flex-wrap items-center justify-start';
19513
19513
  }
19514
19514
  return this.parentRef;
19515
19515
  }
@@ -22646,11 +22646,11 @@ class SmzTableComponent {
22646
22646
  this.tableHelper.clear(this.tableKey);
22647
22647
  }
22648
22648
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: TableEditableService }, { token: TableFormsService }, { token: TableHelperService }, { token: i1$3.Store }, { token: SmzExcelService }], target: i0.ɵɵFactoryTarget.Component });
22649
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableComponent, isStandalone: false, selector: "smz-ui-table", inputs: { state: "state", items: "items", loading: "loading" }, outputs: { selectionChange: "selectionChange", validChange: "validChange", filterChange: "filterChange", columnVisibilityChange: "columnVisibilityChange", create: "create", update: "update", delete: "delete" }, host: { properties: { "attr.data-testid": "this.hostTestId" } }, providers: [TableEditableService, TableFormsService], queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["dt"], descendants: true }, { propertyName: "columnMultiselect", first: true, predicate: ["columnMultiselect"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (state | tableContext; as context) {\r\n @if ((context.state.emptyFeedback != null && (context.state.emptyFeedback.extraInfo || context.state.emptyFeedback.image || context.state.emptyFeedback.actionButtons)) && (items != null && items.length === 0) && context.state.emptyFeedback.isFeatured) {\r\n <smz-data-info\r\n [attr.data-testid]=\"buildTableTestId('empty')\"\r\n [image]=\"context.state.emptyFeedback.image\"\r\n [message]=\"context.state.emptyFeedback.message\"\r\n [callbackInfo]=\"context.state.emptyFeedback.extraInfo\"\r\n [actions]=\"context.state.emptyFeedback.actionButtons\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n <ng-container *ngVar=\"state.source?.items$ != null ? (state.source.items$ | async) : null as observableSource\">\r\n <ng-container *ngVar=\"state.source?.signalItems != null ? state.source.signalItems() : null as signalSource\">\r\n @if (((observableSource ?? signalSource ?? items) | cloneTableItems : context: tableKey: context.state.rowExpansion.sincronize); as clonedData) {\r\n <p-table #dt\r\n dataKey=\"id\"\r\n editMode=\"row\"\r\n [stripedRows]=\"context.state.styles.striped\"\r\n [value]=\"clonedData.items\"\r\n [(selection)]=\"selectedItems\"\r\n [tableStyleClass]=\"context.state.styles.tableStyleClass\"\r\n [size]=\"context.state.styles.size === 'extra-small' ? 'small' : context.state.styles.size === 'small' ? 'small' : context.state.styles.size === 'large' ? 'large' : undefined\"\r\n [class]=\"'p-datatable-smz-ui-table' + (context.state.styles.showGrid ? ' p-datatable-gridlines' : '') + (context.state.styles.size === 'extra-small' ? ' p-datatable-xs' : '') + (context.state.styles.size === 'small' ? ' p-datatable-sm' : '') + (context.state.styles.size === 'large' ? ' p-datatable-lg' : '')\"\r\n [rowHover]=\"context.state.actions.rowBehavior.hoverable\"\r\n [rows]=\"context.state.pagination.rows\"\r\n [first]=\"context.state.pagination.state.first\"\r\n [showCurrentPageReport]=\"context.state.pagination.pageReport.isVisible\"\r\n [rowsPerPageOptions]=\"context.state.pagination.rowsPerPageOptions\"\r\n [loading]=\"loading || isViewportInitializing\"\r\n [style.visibility]=\"isViewportInitializing ? 'hidden' : null\"\r\n [paginator]=\"context.state.pagination.isVisible\"\r\n paginatorDropdownAppendTo=\"body\"\r\n [currentPageReportTemplate]=\"context.state.locale.paginator.template\"\r\n [sortField]=\"context.state.sort.field\"\r\n [sortMode]=\"context.state.sort.mode\"\r\n [sortOrder]=\"context.state.sort.order\"\r\n [multiSortMeta]=\"context.state.sort.multiSortMeta\"\r\n [scrollable]=\"context.state.viewport.scrollable\"\r\n [scrollHeight]=\"context.state.viewport.scrollHeight\"\r\n [filterDelay]=\"0\"\r\n [globalFilterFields]=\"context.globalFilter\"\r\n [columns]=\"context.visibleColumns\"\r\n [frozenColumns]=\"context.frozenColumns\"\r\n [frozenWidth]=\"context.state.frozen.isEnabled ? context.state.frozen.width : null\"\r\n [resizableColumns]=\"context.state.viewport.resizableColumns\"\r\n [columnResizeMode]=\"context.state.viewport.columnResizeMode\"\r\n (onPage)=\"onPage($event)\"\r\n (onFilter)=\"onFilter($event)\"\r\n (selectionChange)=\"emitSelection($event)\"\r\n >\r\n @if (context.state.caption.isVisible) {\r\n <ng-template smzTemplate=\"caption\">\r\n <div class=\"grid grid-nogutter items-center gap-2\" [attr.data-testid]=\"buildTableTestId('caption')\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n @if (context.state.caption.title != null) {\r\n <div class=\"col database-title\" [attr.data-testid]=\"buildTableTestId('title')\" [innerHTML]=\"context.state.caption.title\"></div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"captionTemplate; context: { $implicit: dt }\"></ng-container>\r\n <smz-table-caption-buttons [buttons]=\"context.state.caption.buttons\" [tableTestId]=\"state.tableTestId\"></smz-table-caption-buttons>\r\n @if (context.state.caption.exportToPdf.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-pdf')\" [label]=\"context.state.locale.exportToPdf.label\" icon=\"fa-solid fa-file-pdf\" (click)=\"exportToPdf(context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.exportToExcel.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-excel')\" [label]=\"context.state.locale.exportToExcel.label\" icon=\"fa-solid fa-file-excel\" (click)=\"exportToExcel(table, context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.editable.creation.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('create')\" [label]=\"context.state.editable.creation.buttonLabel\" icon=\"fa-solid fa-plus\" (click)=\"editableService.onRowCreateInit(table, context.columns)\" [disabled]=\"clonedData.showSkeleton || editableService.isEditing || editableService.isCreating || context.state.editable.creation.isButtonDisabled\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.rowSelection.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-selection')\" [label]=\"context.state.locale.rowSelection.label\" icon=\"fa-solid fa-check-double\" (click)=\"onRowSelection(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.rowExpansion.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-expansion')\" [label]=\"context.state.rowExpansion.label\" icon=\"fa-solid fa-list\" (click)=\"onRowExpansion(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.clearFilters.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('clear-filters')\" [label]=\"context.state.locale.clearFilters.label\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.columnVisibility.showDropdownSelector) {\r\n <ui-multi-select #columnMultiselect [attr.data-testid]=\"buildTableTestId('column-visibility')\" class=\"ml-2 col-12 md:col-2\" styleClass=\"w-full\" appendTo=\"body\" [options]=\"context.hideableColumns\" [(ngModel)]=\"selectedColumns\" [placeholder]=\"context.state.locale.columnVisibility.placeholder\" [selectedItemsLabel]=\"context.state.locale.columnVisibility.selectedItemsLabel\" optionLabel=\"name\" dataKey=\"field\" optionLabel=\"header\" [filter]=\"true\" (panelHide)=\"updateColumnsVisibility(true)\" [smzTooltip]=\"context.state.locale.columnVisibility.pTooltip\">\r\n </ui-multi-select>\r\n }\r\n @if (context.state.caption.globalFilter.isVisible) {\r\n <ui-icon-field class=\"col-12\" [ngClass]=\"{ 'md:col-2': !context.state.caption.globalFilter.expanded }\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal [(ngModel)]=\"globalSearchInput\" smzInputText type=\"text\" styleClass=\"database-global-search\" (input)=\"updateGlobalFilter(inputGlobal.value)\" [disabled]=\"clonedData.showSkeleton\" [placeholder]=\"context.state.locale.globalFilter.placeholder\" [attr.data-testid]=\"buildTableTestId('search')\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center mt-2\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </ng-template>\r\n }\r\n <ng-template smzTemplate=\"header\" let-columns>\r\n <tr [ngClass]=\"{ 'invisible-header': !context.state.header.isVisible }\">\r\n @if (context.state.caption.rowSelection.isEnabled) {\r\n <th [ngStyle]=\"context.state.caption.rowSelection.ngStyle\">\r\n @if (!context.state.actions.batchActions.isVisible) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (context.state.rowExpansion.isEnabled) {\r\n <th [ngStyle]=\"context.state.rowExpansion.ngStyle\"></th>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (context.state.viewport.resizableColumns) {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n } @else {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n }\r\n <ng-template #headerContent>\r\n <div class=\"flex justify-start items-center\">\r\n <span class=\"mr-1\">{{ col.header }}</span>\r\n @if (col.showHeaderActions) {\r\n <smz-table-header-actions clickStopPropagation class=\"ml-1 mt-1\" [col]=\"col\"></smz-table-header-actions>\r\n }\r\n @if (!clonedData.showSkeleton && col.isOrderable) {\r\n <p-sortIcon [field]=\"col.sortField\"></p-sortIcon>\r\n }\r\n @if (!clonedData.showSkeleton) {\r\n @switch (col.filter.type) {\r\n @case (filterTypes.currency) {\r\n <smz-column-filter type=\"numeric\" currency=\"BRL\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.numeric) {\r\n <smz-column-filter type=\"numeric\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.date) {\r\n <smz-column-filter type=\"date\" [field]=\"col.filterField\" [showTime]=\"col.filter.showTime\"></smz-column-filter>\r\n }\r\n @case (filterTypes.text) {\r\n <smz-column-filter type=\"text\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.boolean) {\r\n <smz-column-filter type=\"boolean\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.dropdown) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField + '.id'\" matchMode=\"dropdown\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-select appendTo=\"body\" [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"in\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_array) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"array-some\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : true\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_string) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"multiselectByString\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField : filterField : null : true : false : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n }\r\n }\r\n @if (context.state.caption.columnVisibility.showColumnHideButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-eye-slash\" (click)=\"hideColumn(col, context)\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible|| context.state.editable.isEditable) {\r\n <th [ngStyle]=\"context.state.editable.isEditable ? context.state.editable.ngStyle : context.state.actions.customActions.ngStyle\"></th>\r\n }\r\n </tr>\r\n @if (context.state.actions.batchActions.isVisible) {\r\n <tr>\r\n <th [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\"\r\n [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"grid grid-nogutter items-center justify-start\">\r\n <p-tableHeaderCheckbox class=\"mr-4\"></p-tableHeaderCheckbox>\r\n @if (selectedItems?.length > 0) {\r\n @for (batchItem of context.state.actions.batchActions.items; track batchItem.label) {\r\n @if (batchItem.visible) {\r\n <button smzButton [label]=\"batchItem.label\" class=\"animate__animated animate__fadeIn\" [styleClass]=\"'p-button-plain ' + (batchItem.styleClass)\" [icon]=\"batchItem.icon\" (click)=\"batchItem.command(selectedItems); selectedItems = [];\" [disabled]=\"batchItem.disabled\" [smzTooltip]=\"batchItem.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n }\r\n </div>\r\n </th>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"body\" let-item let-editing=\"editing\" let-rowIndex=\"rowIndex\" let-columns=\"columns\">\r\n <tr #editableRowElement\r\n [pEditableRow]=\"item\"\r\n tableItemAction\r\n [isClickable]=\"context.state.actions.rowBehavior.isClickable\"\r\n [callback]=\"context.state.actions.rowBehavior.clickCallback\"\r\n [expandRowOnClick]=\"context.state.actions.rowBehavior.expandRowOnClick\"\r\n [item]=\"item\"\r\n class=\"p-selectable-row\"\r\n [attr.data-testid]=\"buildRowTestId(item, rowIndex)\"\r\n [ngClass]=\"{ 'highlight-row': item?.id === state.actions.rowBehavior.highlights, 'preserve-in-small': state.actions.rowBehavior.preserveLayoutInSmallDevices }\"\r\n >\r\n @if (context.state.caption.rowSelection.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\"\r\n [ngStyle]=\"context.state.caption.rowSelection.ngStyle\"\r\n >\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n }\r\n @if (context.state.rowExpansion.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading, 'grid grid-nogutter justify-start items-center gap-2': context.state.rowExpansion.highlightNewItems && item._isNew }\"\r\n [ngStyle]=\"context.state.rowExpansion.ngStyle\"\r\n >\r\n <button smzButton type=\"button\" class=\"smz-table-row-expansion-toggle\" [icon]=\"item._isExpanded ? 'fa-solid fa-chevron-down' : 'fa-solid fa-chevron-right'\" (click)=\"item._isExpanded = !item._isExpanded; item._isNew = false\" variant=\"text\" [rounded]=\"true\" size=\"sm\"></button>\r\n @if (context.state.rowExpansion.highlightNewItems && item._isNew) {\r\n <div class=\"rounded bg-cyan-400 text-sm text-white px-2 py-0 smz-table-new-tag\" (click)=\"item._isNew = false\">{{ context.state.rowExpansion.highlightLabel }}</div>\r\n }\r\n </td>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (clonedData.showSkeleton) {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [ngStyle]=\"col.content.ngStyle\"><ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton></td>\r\n } @else {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [attr.data-testid]=\"buildCellTestId(item, rowIndex, col.field)\" [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\" [ngStyle]=\"col.content.ngStyle\">\r\n <span class=\"p-column-title\">{{ col.header }}</span>\r\n <p-cellEditor>\r\n <!-- CELULAR COM EDITOR -->\r\n <ng-template smzTemplate=\"input\">\r\n @switch (col.editable.type) {\r\n @case (editableTypes.none) {\r\n <smz-table-content class=\"cursor-default\" [ngClass]=\"col.content.contentStyleClass\" [col]=\"col\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\"></smz-table-content>\r\n }\r\n @case (editableTypes.custom) {\r\n <ng-container *ngTemplateOutlet=\"editableTemplate; context: { $implicit: item, col: col }\"></ng-container>\r\n }\r\n <!-- INPUT TEXT -->\r\n @case (editableTypes.text) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <input smzInputText type=\"text\" [formControl]=\"$any(control)\" style=\"width: 100%;\">\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT NUMBER -->\r\n @case (editableTypes.number) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-input-number *ngVar=\"col.editable.data as numberData\" [formControl]=\"$any(control)\" [mode]=\"numberData.mode\" [minFractionDigits]=\"numberData.minFractionDigits\" [maxFractionDigits]=\"numberData.maxFractionDigits\" [currency]=\"numberData.currency\" [useGrouping]=\"numberData.useGrouping\" [allowEmpty]=\"numberData.allowEmpty\" [showClear]=\"numberData.showClear\" [showButtons]=\"numberData.showButtons\" [prefix]=\"numberData.prefix\" [suffix]=\"numberData.suffix\">\r\n </ui-input-number>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT SWITCH -->\r\n @case (editableTypes.switch) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-toggle-switch [formControl]=\"$any(control)\"></ui-toggle-switch>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT TEXT AREA -->\r\n @case (editableTypes.area) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <textarea smzTextarea type=\"text\" [formControl]=\"$any(control)\" [rows]=\"$any(col.editable.data).rows\" required style=\"width: 100%;\"></textarea>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT DROPDOWN -->\r\n @case (editableTypes.dropdown) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-select appendTo=\"body\" [formControl]=\"$any(control)\" styleClass=\"w-full\" [options]=\"col.editable.data | editableSource\" optionLabel=\"name\" dataKey=\"id\" [placeholder]=\"$any(col.editable.data).placeholder\" [showClear]=\"!col.editable.validatorsPreset?.isRequired\" [filter]=\"true\"></ui-select>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT CALENDAR -->\r\n @case (editableTypes.calendar) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-date-picker [formControl]=\"$any(control)\" appendTo=\"body\" styleClass=\"w-full\" [ngClass]=\"{ 'pl-5': !control.valid }\"></ui-date-picker>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n }\r\n </ng-template>\r\n <!-- CELULAR COM CONTE\u00DADO -->\r\n <ng-template smzTemplate=\"output\">\r\n <smz-table-content\r\n [col]=\"col\"\r\n [smzTooltip]=\"col.content.tooltip != null ? col.content.tooltip(item) : null\"\r\n tooltipPosition=\"left\"\r\n [ngClass]=\"col.content.contentStyleClass\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\">\r\n </smz-table-content>\r\n </ng-template>\r\n </p-cellEditor>\r\n </td>\r\n }\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) {\r\n <td [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"grid grid-nogutter items-center justify-center\">\r\n @if (clonedData.showSkeleton) {\r\n <div class=\"w-full\">\r\n <ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton>\r\n </div>\r\n } @else {\r\n <!-- SEM EDITAR -->\r\n @if (!editing) {\r\n @if (context.state.editable.update.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-pencil\" (click)=\"editableService.onRowEditInit(item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.update.isButtonDisabled || (!context.state.editable.update.condition(item))\" pInitEditableRow [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (context.state.editable.remove.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" (click)=\"editableService.onRowRemove($event, table, item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.remove.isButtonDisabled || (!context.state.editable.remove.condition(item))\" [rounded]=\"true\" variant=\"text\" severity=\"secondary\"></button>\r\n }\r\n }\r\n <!-- EDITANDO -->\r\n @if (editing) {\r\n @if (editableService.context[item.id]; as editableContext) {\r\n <!-- COM LOADING -->\r\n @if (editableContext.isLoading) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-rotate fa-spin\" [disabled]=\"true\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-info\"></button>\r\n }\r\n <!-- SEM LOADING -->\r\n @if (!editableContext.isLoading) {\r\n <!-- EDITANDO -->\r\n @if (!editableContext.hasErrors) {\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowCreateSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowEditSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n <!-- COM ERRORS -->\r\n @if (editableContext.hasErrors) {\r\n <ui-popover #errorsOverlay appendTo=\"body\" [style]=\"{ width: '450px' }\">\r\n <div [innerHtml]=\"editableContext.errors | contentErrors\"></div>\r\n </ui-popover>\r\n <button smzButton type=\"button\" icon=\"fas fa-exclamation-triangle\" [disabled]=\"false\" class=\"mr-2\" (click)=\"errorsOverlay.toggle($event)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n }\r\n }\r\n }\r\n <!-- CUSTOM MENU -->\r\n @if (context.state.actions.customActions.isVisible && !editing) {\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: item }\"></ng-container>\r\n }\r\n <!-- MENU -->\r\n @if (context.state.actions.menu.isVisible && !editing) {\r\n <smz-menu [callback]=\"context.state.actions.menu.callback\" [items]=\"context.state.actions.menu.items\" [data]=\"item\" [behavior]=\"context.state.actions.menu.behavior\" [ngClass]=\"{ 'ml-2': context.state.actions.customActions.isVisible }\" [icon]=\"context.state.actions.menu.styles.icon\" [styleClass]=\"context.state.actions.menu.styles.styleClass\" [buttonClass]=\"context.state.actions.menu.styles.buttonClass\" [testId]=\"buildRowMenuTestId(item, rowIndex)\"></smz-menu>\r\n }\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n @if (item?._isExpanded) {\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\">\r\n <ng-container *ngTemplateOutlet=\"rowContentTemplate; context: { $implicit: item }\"></ng-container>\r\n </td>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\" [ngStyle]=\"{ 'text-align': 'center' }\">\r\n <div [innerHtml]=\"context.state.emptyFeedback.message\"></div>\r\n @if (context.state.caption.clearFilters.isButtonVisible && hasFilters()) {\r\n <button smzButton [label]=\"context.state.locale.clearFilters.label\" class=\"mt-3\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" variant=\"outlined\"></button>\r\n }\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </ng-container>\r\n </ng-container>\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "stripedRows", "size", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: ResizableColumn, selector: "[pResizableColumn]", inputs: ["pResizableColumnDisabled"] }, { kind: "component", type: CellEditor, selector: "p-cellEditor" }, { kind: "component", type: SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "directive", type: EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: InitEditableRow, selector: "[pInitEditableRow]" }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzMultiSelectComponent, selector: "ui-multi-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "showToggleAll", "emptyMessage", "emptyFilterMessage", "maxSelectedLabels", "selectedItemsLabel", "panelStyle", "styleClass", "inputId", "autofocusFilter", "appendTo", "display"], outputs: ["changed", "panelHide", "panelShow"] }, { kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "component", type: i2.SmzDatePickerComponent, selector: "ui-date-picker", inputs: ["selectionMode", "dateFormat", "showTime", "timeOnly", "showSeconds", "hourFormat", "minDate", "maxDate", "showButtonBar", "showIcon", "showOnFocus", "keepInvalid", "readonlyInput", "placeholder", "inputId", "styleClass", "appendTo", "touchUI", "focusTrap"], outputs: ["selected", "cleared", "opened", "closed", "blurred"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TableItemActionsDirective, selector: "[tableItemAction]", inputs: ["isClickable", "item", "callback", "expandRowOnClick"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "component", type: SmzDataInfoComponent, selector: "smz-data-info", inputs: ["image", "message", "actions", "callbackInfo", "callbackLabel"], outputs: ["clicked"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzSkeletonComponent, selector: "ui-skeleton", inputs: ["shape", "width", "height"] }, { kind: "directive", type: i2.SmzTextareaDirective, selector: "textarea[smzTextarea]", inputs: ["invalid", "autoResize"] }, { kind: "component", type: i2.SmzPopoverComponent, selector: "ui-popover", inputs: ["style", "styleClass", "dismissable", "autoZIndex", "appendTo"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.SmzToggleSwitchComponent, selector: "ui-toggle-switch", inputs: ["name"], outputs: ["changed"] }, { kind: "component", type: i2.SmzInputNumberComponent, selector: "ui-input-number", inputs: ["mode", "locale", "localeMatcher", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "min", "max", "step", "prefix", "suffix", "showButtons", "showClear", "allowEmpty", "placeholder", "readonly", "inputId", "name"], outputs: ["inputed", "keyDown", "blurred", "focused"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "component", type: i2.SmzIconFieldComponent, selector: "ui-icon-field" }, { kind: "component", type: i2.SmzInputIconComponent, selector: "ui-input-icon", inputs: ["styleClass"] }, { kind: "component", type: SmzColumnFilterComponent, selector: "smz-column-filter", inputs: ["currency", "display", "field", "matchMode", "showAddButton", "showMatchModes", "showOperator", "showApplyButton", "type", "showTime"] }, { kind: "component", type: SmzTableValidationMessagesComponent, selector: "smz-table-validation-messages", inputs: ["errors", "messages", "isFormInvalid", "isFormDirty"] }, { kind: "component", type: SmzTableContentComponent, selector: "smz-table-content", inputs: ["col", "contentTypes", "item", "rowIndex", "contentTemplate"] }, { kind: "component", type: SmzTableCaptionButtonsComponent, selector: "smz-table-caption-buttons", inputs: ["buttons", "tableTestId"] }, { kind: "component", type: SmzTableHeaderActionsComponent, selector: "smz-table-header-actions", inputs: ["col"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: UniqueFilterPipe, name: "uniqueFilter" }, { kind: "pipe", type: SmzTableContextPipe, name: "tableContext" }, { kind: "pipe", type: SmzFilterObjectPipe, name: "filterObject" }, { kind: "pipe", type: SmzCloneTableItemsPipe, name: "cloneTableItems" }, { kind: "pipe", type: SmzEditableSourcePipe, name: "editableSource" }, { kind: "pipe", type: SmzContentErrorsPipe, name: "contentErrors" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
22649
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTableComponent, isStandalone: false, selector: "smz-ui-table", inputs: { state: "state", items: "items", loading: "loading" }, outputs: { selectionChange: "selectionChange", validChange: "validChange", filterChange: "filterChange", columnVisibilityChange: "columnVisibilityChange", create: "create", update: "update", delete: "delete" }, host: { properties: { "attr.data-testid": "this.hostTestId" } }, providers: [TableEditableService, TableFormsService], queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "table", first: true, predicate: ["dt"], descendants: true }, { propertyName: "columnMultiselect", first: true, predicate: ["columnMultiselect"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (state | tableContext; as context) {\r\n @if ((context.state.emptyFeedback != null && (context.state.emptyFeedback.extraInfo || context.state.emptyFeedback.image || context.state.emptyFeedback.actionButtons)) && (items != null && items.length === 0) && context.state.emptyFeedback.isFeatured) {\r\n <smz-data-info\r\n [attr.data-testid]=\"buildTableTestId('empty')\"\r\n [image]=\"context.state.emptyFeedback.image\"\r\n [message]=\"context.state.emptyFeedback.message\"\r\n [callbackInfo]=\"context.state.emptyFeedback.extraInfo\"\r\n [actions]=\"context.state.emptyFeedback.actionButtons\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n <ng-container *ngVar=\"state.source?.items$ != null ? (state.source.items$ | async) : null as observableSource\">\r\n <ng-container *ngVar=\"state.source?.signalItems != null ? state.source.signalItems() : null as signalSource\">\r\n @if (((observableSource ?? signalSource ?? items) | cloneTableItems : context: tableKey: context.state.rowExpansion.sincronize); as clonedData) {\r\n <p-table #dt\r\n dataKey=\"id\"\r\n editMode=\"row\"\r\n [stripedRows]=\"context.state.styles.striped\"\r\n [value]=\"clonedData.items\"\r\n [(selection)]=\"selectedItems\"\r\n [tableStyleClass]=\"context.state.styles.tableStyleClass\"\r\n [size]=\"context.state.styles.size === 'extra-small' ? 'small' : context.state.styles.size === 'small' ? 'small' : context.state.styles.size === 'large' ? 'large' : undefined\"\r\n [class]=\"'p-datatable-smz-ui-table' + (context.state.styles.showGrid ? ' p-datatable-gridlines' : '') + (context.state.styles.size === 'extra-small' ? ' p-datatable-xs' : '') + (context.state.styles.size === 'small' ? ' p-datatable-sm' : '') + (context.state.styles.size === 'large' ? ' p-datatable-lg' : '')\"\r\n [rowHover]=\"context.state.actions.rowBehavior.hoverable\"\r\n [rows]=\"context.state.pagination.rows\"\r\n [first]=\"context.state.pagination.state.first\"\r\n [showCurrentPageReport]=\"context.state.pagination.pageReport.isVisible\"\r\n [rowsPerPageOptions]=\"context.state.pagination.rowsPerPageOptions\"\r\n [loading]=\"loading || isViewportInitializing\"\r\n [style.visibility]=\"isViewportInitializing ? 'hidden' : null\"\r\n [paginator]=\"context.state.pagination.isVisible\"\r\n paginatorDropdownAppendTo=\"body\"\r\n [currentPageReportTemplate]=\"context.state.locale.paginator.template\"\r\n [sortField]=\"context.state.sort.field\"\r\n [sortMode]=\"context.state.sort.mode\"\r\n [sortOrder]=\"context.state.sort.order\"\r\n [multiSortMeta]=\"context.state.sort.multiSortMeta\"\r\n [scrollable]=\"context.state.viewport.scrollable\"\r\n [scrollHeight]=\"context.state.viewport.scrollHeight\"\r\n [filterDelay]=\"0\"\r\n [globalFilterFields]=\"context.globalFilter\"\r\n [columns]=\"context.visibleColumns\"\r\n [frozenColumns]=\"context.frozenColumns\"\r\n [frozenWidth]=\"context.state.frozen.isEnabled ? context.state.frozen.width : null\"\r\n [resizableColumns]=\"context.state.viewport.resizableColumns\"\r\n [columnResizeMode]=\"context.state.viewport.columnResizeMode\"\r\n (onPage)=\"onPage($event)\"\r\n (onFilter)=\"onFilter($event)\"\r\n (selectionChange)=\"emitSelection($event)\"\r\n >\r\n @if (context.state.caption.isVisible) {\r\n <ng-template smzTemplate=\"caption\">\r\n <div class=\"flex flex-wrap items-center gap-2\" [attr.data-testid]=\"buildTableTestId('caption')\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n @if (context.state.caption.title != null) {\r\n <div class=\"flex-1 database-title\" [attr.data-testid]=\"buildTableTestId('title')\" [innerHTML]=\"context.state.caption.title\"></div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"captionTemplate; context: { $implicit: dt }\"></ng-container>\r\n <smz-table-caption-buttons [buttons]=\"context.state.caption.buttons\" [tableTestId]=\"state.tableTestId\"></smz-table-caption-buttons>\r\n @if (context.state.caption.exportToPdf.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-pdf')\" [label]=\"context.state.locale.exportToPdf.label\" icon=\"fa-solid fa-file-pdf\" (click)=\"exportToPdf(context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.exportToExcel.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-excel')\" [label]=\"context.state.locale.exportToExcel.label\" icon=\"fa-solid fa-file-excel\" (click)=\"exportToExcel(table, context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.editable.creation.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('create')\" [label]=\"context.state.editable.creation.buttonLabel\" icon=\"fa-solid fa-plus\" (click)=\"editableService.onRowCreateInit(table, context.columns)\" [disabled]=\"clonedData.showSkeleton || editableService.isEditing || editableService.isCreating || context.state.editable.creation.isButtonDisabled\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.rowSelection.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-selection')\" [label]=\"context.state.locale.rowSelection.label\" icon=\"fa-solid fa-check-double\" (click)=\"onRowSelection(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.rowExpansion.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-expansion')\" [label]=\"context.state.rowExpansion.label\" icon=\"fa-solid fa-list\" (click)=\"onRowExpansion(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.clearFilters.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('clear-filters')\" [label]=\"context.state.locale.clearFilters.label\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.columnVisibility.showDropdownSelector) {\r\n <ui-multi-select #columnMultiselect [attr.data-testid]=\"buildTableTestId('column-visibility')\" class=\"ml-2 w-full flex-none md:w-2/12\" styleClass=\"w-full\" appendTo=\"body\" [options]=\"context.hideableColumns\" [(ngModel)]=\"selectedColumns\" [placeholder]=\"context.state.locale.columnVisibility.placeholder\" [selectedItemsLabel]=\"context.state.locale.columnVisibility.selectedItemsLabel\" optionLabel=\"name\" dataKey=\"field\" optionLabel=\"header\" [filter]=\"true\" (panelHide)=\"updateColumnsVisibility(true)\" [smzTooltip]=\"context.state.locale.columnVisibility.pTooltip\">\r\n </ui-multi-select>\r\n }\r\n @if (context.state.caption.globalFilter.isVisible) {\r\n <ui-icon-field class=\"w-full flex-none\" [ngClass]=\"{ 'md:w-2/12 flex-none': !context.state.caption.globalFilter.expanded }\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal [(ngModel)]=\"globalSearchInput\" smzInputText type=\"text\" styleClass=\"database-global-search\" (input)=\"updateGlobalFilter(inputGlobal.value)\" [disabled]=\"clonedData.showSkeleton\" [placeholder]=\"context.state.locale.globalFilter.placeholder\" [attr.data-testid]=\"buildTableTestId('search')\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"flex flex-wrap items-center mt-2\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </ng-template>\r\n }\r\n <ng-template smzTemplate=\"header\" let-columns>\r\n <tr [ngClass]=\"{ 'invisible-header': !context.state.header.isVisible }\">\r\n @if (context.state.caption.rowSelection.isEnabled) {\r\n <th [ngStyle]=\"context.state.caption.rowSelection.ngStyle\">\r\n @if (!context.state.actions.batchActions.isVisible) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (context.state.rowExpansion.isEnabled) {\r\n <th [ngStyle]=\"context.state.rowExpansion.ngStyle\"></th>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (context.state.viewport.resizableColumns) {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n } @else {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n }\r\n <ng-template #headerContent>\r\n <div class=\"flex justify-start items-center\">\r\n <span class=\"mr-1\">{{ col.header }}</span>\r\n @if (col.showHeaderActions) {\r\n <smz-table-header-actions clickStopPropagation class=\"ml-1 mt-1\" [col]=\"col\"></smz-table-header-actions>\r\n }\r\n @if (!clonedData.showSkeleton && col.isOrderable) {\r\n <p-sortIcon [field]=\"col.sortField\"></p-sortIcon>\r\n }\r\n @if (!clonedData.showSkeleton) {\r\n @switch (col.filter.type) {\r\n @case (filterTypes.currency) {\r\n <smz-column-filter type=\"numeric\" currency=\"BRL\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.numeric) {\r\n <smz-column-filter type=\"numeric\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.date) {\r\n <smz-column-filter type=\"date\" [field]=\"col.filterField\" [showTime]=\"col.filter.showTime\"></smz-column-filter>\r\n }\r\n @case (filterTypes.text) {\r\n <smz-column-filter type=\"text\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.boolean) {\r\n <smz-column-filter type=\"boolean\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.dropdown) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField + '.id'\" matchMode=\"dropdown\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-select appendTo=\"body\" [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"in\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_array) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"array-some\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : true\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_string) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"multiselectByString\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField : filterField : null : true : false : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n }\r\n }\r\n @if (context.state.caption.columnVisibility.showColumnHideButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-eye-slash\" (click)=\"hideColumn(col, context)\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible|| context.state.editable.isEditable) {\r\n <th [ngStyle]=\"context.state.editable.isEditable ? context.state.editable.ngStyle : context.state.actions.customActions.ngStyle\"></th>\r\n }\r\n </tr>\r\n @if (context.state.actions.batchActions.isVisible) {\r\n <tr>\r\n <th [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\"\r\n [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"flex flex-wrap items-center justify-start\">\r\n <p-tableHeaderCheckbox class=\"mr-4\"></p-tableHeaderCheckbox>\r\n @if (selectedItems?.length > 0) {\r\n @for (batchItem of context.state.actions.batchActions.items; track batchItem.label) {\r\n @if (batchItem.visible) {\r\n <button smzButton [label]=\"batchItem.label\" class=\"animate__animated animate__fadeIn\" [styleClass]=\"'p-button-plain ' + (batchItem.styleClass)\" [icon]=\"batchItem.icon\" (click)=\"batchItem.command(selectedItems); selectedItems = [];\" [disabled]=\"batchItem.disabled\" [smzTooltip]=\"batchItem.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n }\r\n </div>\r\n </th>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"body\" let-item let-editing=\"editing\" let-rowIndex=\"rowIndex\" let-columns=\"columns\">\r\n <tr #editableRowElement\r\n [pEditableRow]=\"item\"\r\n tableItemAction\r\n [isClickable]=\"context.state.actions.rowBehavior.isClickable\"\r\n [callback]=\"context.state.actions.rowBehavior.clickCallback\"\r\n [expandRowOnClick]=\"context.state.actions.rowBehavior.expandRowOnClick\"\r\n [item]=\"item\"\r\n class=\"p-selectable-row\"\r\n [attr.data-testid]=\"buildRowTestId(item, rowIndex)\"\r\n [ngClass]=\"{ 'highlight-row': item?.id === state.actions.rowBehavior.highlights, 'preserve-in-small': state.actions.rowBehavior.preserveLayoutInSmallDevices }\"\r\n >\r\n @if (context.state.caption.rowSelection.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\"\r\n [ngStyle]=\"context.state.caption.rowSelection.ngStyle\"\r\n >\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n }\r\n @if (context.state.rowExpansion.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading, 'flex flex-wrap justify-start items-center gap-2': context.state.rowExpansion.highlightNewItems && item._isNew }\"\r\n [ngStyle]=\"context.state.rowExpansion.ngStyle\"\r\n >\r\n <button smzButton type=\"button\" class=\"smz-table-row-expansion-toggle\" [icon]=\"item._isExpanded ? 'fa-solid fa-chevron-down' : 'fa-solid fa-chevron-right'\" (click)=\"item._isExpanded = !item._isExpanded; item._isNew = false\" variant=\"text\" [rounded]=\"true\" size=\"sm\"></button>\r\n @if (context.state.rowExpansion.highlightNewItems && item._isNew) {\r\n <div class=\"rounded bg-cyan-400 text-sm text-white px-2 py-0 smz-table-new-tag\" (click)=\"item._isNew = false\">{{ context.state.rowExpansion.highlightLabel }}</div>\r\n }\r\n </td>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (clonedData.showSkeleton) {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [ngStyle]=\"col.content.ngStyle\"><ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton></td>\r\n } @else {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [attr.data-testid]=\"buildCellTestId(item, rowIndex, col.field)\" [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\" [ngStyle]=\"col.content.ngStyle\">\r\n <span class=\"p-column-title\">{{ col.header }}</span>\r\n <p-cellEditor>\r\n <!-- CELULAR COM EDITOR -->\r\n <ng-template smzTemplate=\"input\">\r\n @switch (col.editable.type) {\r\n @case (editableTypes.none) {\r\n <smz-table-content class=\"cursor-default\" [ngClass]=\"col.content.contentStyleClass\" [col]=\"col\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\"></smz-table-content>\r\n }\r\n @case (editableTypes.custom) {\r\n <ng-container *ngTemplateOutlet=\"editableTemplate; context: { $implicit: item, col: col }\"></ng-container>\r\n }\r\n <!-- INPUT TEXT -->\r\n @case (editableTypes.text) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <input smzInputText type=\"text\" [formControl]=\"$any(control)\" style=\"width: 100%;\">\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT NUMBER -->\r\n @case (editableTypes.number) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-input-number *ngVar=\"col.editable.data as numberData\" [formControl]=\"$any(control)\" [mode]=\"numberData.mode\" [minFractionDigits]=\"numberData.minFractionDigits\" [maxFractionDigits]=\"numberData.maxFractionDigits\" [currency]=\"numberData.currency\" [useGrouping]=\"numberData.useGrouping\" [allowEmpty]=\"numberData.allowEmpty\" [showClear]=\"numberData.showClear\" [showButtons]=\"numberData.showButtons\" [prefix]=\"numberData.prefix\" [suffix]=\"numberData.suffix\">\r\n </ui-input-number>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT SWITCH -->\r\n @case (editableTypes.switch) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-toggle-switch [formControl]=\"$any(control)\"></ui-toggle-switch>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT TEXT AREA -->\r\n @case (editableTypes.area) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <textarea smzTextarea type=\"text\" [formControl]=\"$any(control)\" [rows]=\"$any(col.editable.data).rows\" required style=\"width: 100%;\"></textarea>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT DROPDOWN -->\r\n @case (editableTypes.dropdown) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-select appendTo=\"body\" [formControl]=\"$any(control)\" styleClass=\"w-full\" [options]=\"col.editable.data | editableSource\" optionLabel=\"name\" dataKey=\"id\" [placeholder]=\"$any(col.editable.data).placeholder\" [showClear]=\"!col.editable.validatorsPreset?.isRequired\" [filter]=\"true\"></ui-select>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT CALENDAR -->\r\n @case (editableTypes.calendar) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-date-picker [formControl]=\"$any(control)\" appendTo=\"body\" styleClass=\"w-full\" [ngClass]=\"{ 'pl-5': !control.valid }\"></ui-date-picker>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n }\r\n </ng-template>\r\n <!-- CELULAR COM CONTE\u00DADO -->\r\n <ng-template smzTemplate=\"output\">\r\n <smz-table-content\r\n [col]=\"col\"\r\n [smzTooltip]=\"col.content.tooltip != null ? col.content.tooltip(item) : null\"\r\n tooltipPosition=\"left\"\r\n [ngClass]=\"col.content.contentStyleClass\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\">\r\n </smz-table-content>\r\n </ng-template>\r\n </p-cellEditor>\r\n </td>\r\n }\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) {\r\n <td [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"flex flex-wrap items-center justify-center\">\r\n @if (clonedData.showSkeleton) {\r\n <div class=\"w-full\">\r\n <ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton>\r\n </div>\r\n } @else {\r\n <!-- SEM EDITAR -->\r\n @if (!editing) {\r\n @if (context.state.editable.update.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-pencil\" (click)=\"editableService.onRowEditInit(item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.update.isButtonDisabled || (!context.state.editable.update.condition(item))\" pInitEditableRow [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (context.state.editable.remove.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" (click)=\"editableService.onRowRemove($event, table, item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.remove.isButtonDisabled || (!context.state.editable.remove.condition(item))\" [rounded]=\"true\" variant=\"text\" severity=\"secondary\"></button>\r\n }\r\n }\r\n <!-- EDITANDO -->\r\n @if (editing) {\r\n @if (editableService.context[item.id]; as editableContext) {\r\n <!-- COM LOADING -->\r\n @if (editableContext.isLoading) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-rotate fa-spin\" [disabled]=\"true\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-info\"></button>\r\n }\r\n <!-- SEM LOADING -->\r\n @if (!editableContext.isLoading) {\r\n <!-- EDITANDO -->\r\n @if (!editableContext.hasErrors) {\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowCreateSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowEditSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n <!-- COM ERRORS -->\r\n @if (editableContext.hasErrors) {\r\n <ui-popover #errorsOverlay appendTo=\"body\" [style]=\"{ width: '450px' }\">\r\n <div [innerHtml]=\"editableContext.errors | contentErrors\"></div>\r\n </ui-popover>\r\n <button smzButton type=\"button\" icon=\"fas fa-exclamation-triangle\" [disabled]=\"false\" class=\"mr-2\" (click)=\"errorsOverlay.toggle($event)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n }\r\n }\r\n }\r\n <!-- CUSTOM MENU -->\r\n @if (context.state.actions.customActions.isVisible && !editing) {\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: item }\"></ng-container>\r\n }\r\n <!-- MENU -->\r\n @if (context.state.actions.menu.isVisible && !editing) {\r\n <smz-menu [callback]=\"context.state.actions.menu.callback\" [items]=\"context.state.actions.menu.items\" [data]=\"item\" [behavior]=\"context.state.actions.menu.behavior\" [ngClass]=\"{ 'ml-2': context.state.actions.customActions.isVisible }\" [icon]=\"context.state.actions.menu.styles.icon\" [styleClass]=\"context.state.actions.menu.styles.styleClass\" [buttonClass]=\"context.state.actions.menu.styles.buttonClass\" [testId]=\"buildRowMenuTestId(item, rowIndex)\"></smz-menu>\r\n }\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n @if (item?._isExpanded) {\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\">\r\n <ng-container *ngTemplateOutlet=\"rowContentTemplate; context: { $implicit: item }\"></ng-container>\r\n </td>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\" [ngStyle]=\"{ 'text-align': 'center' }\">\r\n <div [innerHtml]=\"context.state.emptyFeedback.message\"></div>\r\n @if (context.state.caption.clearFilters.isButtonVisible && hasFilters()) {\r\n <button smzButton [label]=\"context.state.locale.clearFilters.label\" class=\"mt-3\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" variant=\"outlined\"></button>\r\n }\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </ng-container>\r\n </ng-container>\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "stripedRows", "size", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "virtualRowHeight", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll"], outputs: ["selectAllChange", "selectionChange", "contextMenuSelectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: SortableColumn, selector: "[pSortableColumn]", inputs: ["pSortableColumn", "pSortableColumnDisabled"] }, { kind: "directive", type: ResizableColumn, selector: "[pResizableColumn]", inputs: ["pResizableColumnDisabled"] }, { kind: "component", type: CellEditor, selector: "p-cellEditor" }, { kind: "component", type: SortIcon, selector: "p-sortIcon", inputs: ["field"] }, { kind: "component", type: TableCheckbox, selector: "p-tableCheckbox", inputs: ["disabled", "value", "index", "inputId", "name", "required", "ariaLabel"] }, { kind: "component", type: TableHeaderCheckbox, selector: "p-tableHeaderCheckbox", inputs: ["disabled", "inputId", "name", "ariaLabel"] }, { kind: "directive", type: EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "directive", type: InitEditableRow, selector: "[pInitEditableRow]" }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzMultiSelectComponent, selector: "ui-multi-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "showToggleAll", "emptyMessage", "emptyFilterMessage", "maxSelectedLabels", "selectedItemsLabel", "panelStyle", "styleClass", "inputId", "autofocusFilter", "appendTo", "display"], outputs: ["changed", "panelHide", "panelShow"] }, { kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "component", type: i2.SmzDatePickerComponent, selector: "ui-date-picker", inputs: ["selectionMode", "dateFormat", "showTime", "timeOnly", "showSeconds", "hourFormat", "minDate", "maxDate", "showButtonBar", "showIcon", "showOnFocus", "keepInvalid", "readonlyInput", "placeholder", "inputId", "styleClass", "appendTo", "touchUI", "focusTrap"], outputs: ["selected", "cleared", "opened", "closed", "blurred"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: TableItemActionsDirective, selector: "[tableItemAction]", inputs: ["isClickable", "item", "callback", "expandRowOnClick"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "component", type: SmzDataInfoComponent, selector: "smz-data-info", inputs: ["image", "message", "actions", "callbackInfo", "callbackLabel"], outputs: ["clicked"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzSkeletonComponent, selector: "ui-skeleton", inputs: ["shape", "width", "height"] }, { kind: "directive", type: i2.SmzTextareaDirective, selector: "textarea[smzTextarea]", inputs: ["invalid", "autoResize"] }, { kind: "component", type: i2.SmzPopoverComponent, selector: "ui-popover", inputs: ["style", "styleClass", "dismissable", "autoZIndex", "appendTo"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i1$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.SmzToggleSwitchComponent, selector: "ui-toggle-switch", inputs: ["name"], outputs: ["changed"] }, { kind: "component", type: i2.SmzInputNumberComponent, selector: "ui-input-number", inputs: ["mode", "locale", "localeMatcher", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "min", "max", "step", "prefix", "suffix", "showButtons", "showClear", "allowEmpty", "placeholder", "readonly", "inputId", "name"], outputs: ["inputed", "keyDown", "blurred", "focused"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "component", type: i2.SmzIconFieldComponent, selector: "ui-icon-field" }, { kind: "component", type: i2.SmzInputIconComponent, selector: "ui-input-icon", inputs: ["styleClass"] }, { kind: "component", type: SmzColumnFilterComponent, selector: "smz-column-filter", inputs: ["currency", "display", "field", "matchMode", "showAddButton", "showMatchModes", "showOperator", "showApplyButton", "type", "showTime"] }, { kind: "component", type: SmzTableValidationMessagesComponent, selector: "smz-table-validation-messages", inputs: ["errors", "messages", "isFormInvalid", "isFormDirty"] }, { kind: "component", type: SmzTableContentComponent, selector: "smz-table-content", inputs: ["col", "contentTypes", "item", "rowIndex", "contentTemplate"] }, { kind: "component", type: SmzTableCaptionButtonsComponent, selector: "smz-table-caption-buttons", inputs: ["buttons", "tableTestId"] }, { kind: "component", type: SmzTableHeaderActionsComponent, selector: "smz-table-header-actions", inputs: ["col"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: UniqueFilterPipe, name: "uniqueFilter" }, { kind: "pipe", type: SmzTableContextPipe, name: "tableContext" }, { kind: "pipe", type: SmzFilterObjectPipe, name: "filterObject" }, { kind: "pipe", type: SmzCloneTableItemsPipe, name: "cloneTableItems" }, { kind: "pipe", type: SmzEditableSourcePipe, name: "editableSource" }, { kind: "pipe", type: SmzContentErrorsPipe, name: "contentErrors" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
22650
22650
  }
22651
22651
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTableComponent, decorators: [{
22652
22652
  type: Component,
22653
- args: [{ selector: 'smz-ui-table', changeDetection: ChangeDetectionStrategy.OnPush, providers: [TableEditableService, TableFormsService], standalone: false, template: "@if (state | tableContext; as context) {\r\n @if ((context.state.emptyFeedback != null && (context.state.emptyFeedback.extraInfo || context.state.emptyFeedback.image || context.state.emptyFeedback.actionButtons)) && (items != null && items.length === 0) && context.state.emptyFeedback.isFeatured) {\r\n <smz-data-info\r\n [attr.data-testid]=\"buildTableTestId('empty')\"\r\n [image]=\"context.state.emptyFeedback.image\"\r\n [message]=\"context.state.emptyFeedback.message\"\r\n [callbackInfo]=\"context.state.emptyFeedback.extraInfo\"\r\n [actions]=\"context.state.emptyFeedback.actionButtons\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n <ng-container *ngVar=\"state.source?.items$ != null ? (state.source.items$ | async) : null as observableSource\">\r\n <ng-container *ngVar=\"state.source?.signalItems != null ? state.source.signalItems() : null as signalSource\">\r\n @if (((observableSource ?? signalSource ?? items) | cloneTableItems : context: tableKey: context.state.rowExpansion.sincronize); as clonedData) {\r\n <p-table #dt\r\n dataKey=\"id\"\r\n editMode=\"row\"\r\n [stripedRows]=\"context.state.styles.striped\"\r\n [value]=\"clonedData.items\"\r\n [(selection)]=\"selectedItems\"\r\n [tableStyleClass]=\"context.state.styles.tableStyleClass\"\r\n [size]=\"context.state.styles.size === 'extra-small' ? 'small' : context.state.styles.size === 'small' ? 'small' : context.state.styles.size === 'large' ? 'large' : undefined\"\r\n [class]=\"'p-datatable-smz-ui-table' + (context.state.styles.showGrid ? ' p-datatable-gridlines' : '') + (context.state.styles.size === 'extra-small' ? ' p-datatable-xs' : '') + (context.state.styles.size === 'small' ? ' p-datatable-sm' : '') + (context.state.styles.size === 'large' ? ' p-datatable-lg' : '')\"\r\n [rowHover]=\"context.state.actions.rowBehavior.hoverable\"\r\n [rows]=\"context.state.pagination.rows\"\r\n [first]=\"context.state.pagination.state.first\"\r\n [showCurrentPageReport]=\"context.state.pagination.pageReport.isVisible\"\r\n [rowsPerPageOptions]=\"context.state.pagination.rowsPerPageOptions\"\r\n [loading]=\"loading || isViewportInitializing\"\r\n [style.visibility]=\"isViewportInitializing ? 'hidden' : null\"\r\n [paginator]=\"context.state.pagination.isVisible\"\r\n paginatorDropdownAppendTo=\"body\"\r\n [currentPageReportTemplate]=\"context.state.locale.paginator.template\"\r\n [sortField]=\"context.state.sort.field\"\r\n [sortMode]=\"context.state.sort.mode\"\r\n [sortOrder]=\"context.state.sort.order\"\r\n [multiSortMeta]=\"context.state.sort.multiSortMeta\"\r\n [scrollable]=\"context.state.viewport.scrollable\"\r\n [scrollHeight]=\"context.state.viewport.scrollHeight\"\r\n [filterDelay]=\"0\"\r\n [globalFilterFields]=\"context.globalFilter\"\r\n [columns]=\"context.visibleColumns\"\r\n [frozenColumns]=\"context.frozenColumns\"\r\n [frozenWidth]=\"context.state.frozen.isEnabled ? context.state.frozen.width : null\"\r\n [resizableColumns]=\"context.state.viewport.resizableColumns\"\r\n [columnResizeMode]=\"context.state.viewport.columnResizeMode\"\r\n (onPage)=\"onPage($event)\"\r\n (onFilter)=\"onFilter($event)\"\r\n (selectionChange)=\"emitSelection($event)\"\r\n >\r\n @if (context.state.caption.isVisible) {\r\n <ng-template smzTemplate=\"caption\">\r\n <div class=\"grid grid-nogutter items-center gap-2\" [attr.data-testid]=\"buildTableTestId('caption')\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n @if (context.state.caption.title != null) {\r\n <div class=\"col database-title\" [attr.data-testid]=\"buildTableTestId('title')\" [innerHTML]=\"context.state.caption.title\"></div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"captionTemplate; context: { $implicit: dt }\"></ng-container>\r\n <smz-table-caption-buttons [buttons]=\"context.state.caption.buttons\" [tableTestId]=\"state.tableTestId\"></smz-table-caption-buttons>\r\n @if (context.state.caption.exportToPdf.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-pdf')\" [label]=\"context.state.locale.exportToPdf.label\" icon=\"fa-solid fa-file-pdf\" (click)=\"exportToPdf(context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.exportToExcel.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-excel')\" [label]=\"context.state.locale.exportToExcel.label\" icon=\"fa-solid fa-file-excel\" (click)=\"exportToExcel(table, context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.editable.creation.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('create')\" [label]=\"context.state.editable.creation.buttonLabel\" icon=\"fa-solid fa-plus\" (click)=\"editableService.onRowCreateInit(table, context.columns)\" [disabled]=\"clonedData.showSkeleton || editableService.isEditing || editableService.isCreating || context.state.editable.creation.isButtonDisabled\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.rowSelection.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-selection')\" [label]=\"context.state.locale.rowSelection.label\" icon=\"fa-solid fa-check-double\" (click)=\"onRowSelection(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.rowExpansion.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-expansion')\" [label]=\"context.state.rowExpansion.label\" icon=\"fa-solid fa-list\" (click)=\"onRowExpansion(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.clearFilters.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('clear-filters')\" [label]=\"context.state.locale.clearFilters.label\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.columnVisibility.showDropdownSelector) {\r\n <ui-multi-select #columnMultiselect [attr.data-testid]=\"buildTableTestId('column-visibility')\" class=\"ml-2 col-12 md:col-2\" styleClass=\"w-full\" appendTo=\"body\" [options]=\"context.hideableColumns\" [(ngModel)]=\"selectedColumns\" [placeholder]=\"context.state.locale.columnVisibility.placeholder\" [selectedItemsLabel]=\"context.state.locale.columnVisibility.selectedItemsLabel\" optionLabel=\"name\" dataKey=\"field\" optionLabel=\"header\" [filter]=\"true\" (panelHide)=\"updateColumnsVisibility(true)\" [smzTooltip]=\"context.state.locale.columnVisibility.pTooltip\">\r\n </ui-multi-select>\r\n }\r\n @if (context.state.caption.globalFilter.isVisible) {\r\n <ui-icon-field class=\"col-12\" [ngClass]=\"{ 'md:col-2': !context.state.caption.globalFilter.expanded }\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal [(ngModel)]=\"globalSearchInput\" smzInputText type=\"text\" styleClass=\"database-global-search\" (input)=\"updateGlobalFilter(inputGlobal.value)\" [disabled]=\"clonedData.showSkeleton\" [placeholder]=\"context.state.locale.globalFilter.placeholder\" [attr.data-testid]=\"buildTableTestId('search')\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center mt-2\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </ng-template>\r\n }\r\n <ng-template smzTemplate=\"header\" let-columns>\r\n <tr [ngClass]=\"{ 'invisible-header': !context.state.header.isVisible }\">\r\n @if (context.state.caption.rowSelection.isEnabled) {\r\n <th [ngStyle]=\"context.state.caption.rowSelection.ngStyle\">\r\n @if (!context.state.actions.batchActions.isVisible) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (context.state.rowExpansion.isEnabled) {\r\n <th [ngStyle]=\"context.state.rowExpansion.ngStyle\"></th>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (context.state.viewport.resizableColumns) {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n } @else {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n }\r\n <ng-template #headerContent>\r\n <div class=\"flex justify-start items-center\">\r\n <span class=\"mr-1\">{{ col.header }}</span>\r\n @if (col.showHeaderActions) {\r\n <smz-table-header-actions clickStopPropagation class=\"ml-1 mt-1\" [col]=\"col\"></smz-table-header-actions>\r\n }\r\n @if (!clonedData.showSkeleton && col.isOrderable) {\r\n <p-sortIcon [field]=\"col.sortField\"></p-sortIcon>\r\n }\r\n @if (!clonedData.showSkeleton) {\r\n @switch (col.filter.type) {\r\n @case (filterTypes.currency) {\r\n <smz-column-filter type=\"numeric\" currency=\"BRL\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.numeric) {\r\n <smz-column-filter type=\"numeric\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.date) {\r\n <smz-column-filter type=\"date\" [field]=\"col.filterField\" [showTime]=\"col.filter.showTime\"></smz-column-filter>\r\n }\r\n @case (filterTypes.text) {\r\n <smz-column-filter type=\"text\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.boolean) {\r\n <smz-column-filter type=\"boolean\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.dropdown) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField + '.id'\" matchMode=\"dropdown\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-select appendTo=\"body\" [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"in\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_array) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"array-some\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : true\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_string) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"multiselectByString\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField : filterField : null : true : false : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n }\r\n }\r\n @if (context.state.caption.columnVisibility.showColumnHideButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-eye-slash\" (click)=\"hideColumn(col, context)\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible|| context.state.editable.isEditable) {\r\n <th [ngStyle]=\"context.state.editable.isEditable ? context.state.editable.ngStyle : context.state.actions.customActions.ngStyle\"></th>\r\n }\r\n </tr>\r\n @if (context.state.actions.batchActions.isVisible) {\r\n <tr>\r\n <th [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\"\r\n [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"grid grid-nogutter items-center justify-start\">\r\n <p-tableHeaderCheckbox class=\"mr-4\"></p-tableHeaderCheckbox>\r\n @if (selectedItems?.length > 0) {\r\n @for (batchItem of context.state.actions.batchActions.items; track batchItem.label) {\r\n @if (batchItem.visible) {\r\n <button smzButton [label]=\"batchItem.label\" class=\"animate__animated animate__fadeIn\" [styleClass]=\"'p-button-plain ' + (batchItem.styleClass)\" [icon]=\"batchItem.icon\" (click)=\"batchItem.command(selectedItems); selectedItems = [];\" [disabled]=\"batchItem.disabled\" [smzTooltip]=\"batchItem.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n }\r\n </div>\r\n </th>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"body\" let-item let-editing=\"editing\" let-rowIndex=\"rowIndex\" let-columns=\"columns\">\r\n <tr #editableRowElement\r\n [pEditableRow]=\"item\"\r\n tableItemAction\r\n [isClickable]=\"context.state.actions.rowBehavior.isClickable\"\r\n [callback]=\"context.state.actions.rowBehavior.clickCallback\"\r\n [expandRowOnClick]=\"context.state.actions.rowBehavior.expandRowOnClick\"\r\n [item]=\"item\"\r\n class=\"p-selectable-row\"\r\n [attr.data-testid]=\"buildRowTestId(item, rowIndex)\"\r\n [ngClass]=\"{ 'highlight-row': item?.id === state.actions.rowBehavior.highlights, 'preserve-in-small': state.actions.rowBehavior.preserveLayoutInSmallDevices }\"\r\n >\r\n @if (context.state.caption.rowSelection.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\"\r\n [ngStyle]=\"context.state.caption.rowSelection.ngStyle\"\r\n >\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n }\r\n @if (context.state.rowExpansion.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading, 'grid grid-nogutter justify-start items-center gap-2': context.state.rowExpansion.highlightNewItems && item._isNew }\"\r\n [ngStyle]=\"context.state.rowExpansion.ngStyle\"\r\n >\r\n <button smzButton type=\"button\" class=\"smz-table-row-expansion-toggle\" [icon]=\"item._isExpanded ? 'fa-solid fa-chevron-down' : 'fa-solid fa-chevron-right'\" (click)=\"item._isExpanded = !item._isExpanded; item._isNew = false\" variant=\"text\" [rounded]=\"true\" size=\"sm\"></button>\r\n @if (context.state.rowExpansion.highlightNewItems && item._isNew) {\r\n <div class=\"rounded bg-cyan-400 text-sm text-white px-2 py-0 smz-table-new-tag\" (click)=\"item._isNew = false\">{{ context.state.rowExpansion.highlightLabel }}</div>\r\n }\r\n </td>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (clonedData.showSkeleton) {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [ngStyle]=\"col.content.ngStyle\"><ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton></td>\r\n } @else {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [attr.data-testid]=\"buildCellTestId(item, rowIndex, col.field)\" [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\" [ngStyle]=\"col.content.ngStyle\">\r\n <span class=\"p-column-title\">{{ col.header }}</span>\r\n <p-cellEditor>\r\n <!-- CELULAR COM EDITOR -->\r\n <ng-template smzTemplate=\"input\">\r\n @switch (col.editable.type) {\r\n @case (editableTypes.none) {\r\n <smz-table-content class=\"cursor-default\" [ngClass]=\"col.content.contentStyleClass\" [col]=\"col\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\"></smz-table-content>\r\n }\r\n @case (editableTypes.custom) {\r\n <ng-container *ngTemplateOutlet=\"editableTemplate; context: { $implicit: item, col: col }\"></ng-container>\r\n }\r\n <!-- INPUT TEXT -->\r\n @case (editableTypes.text) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <input smzInputText type=\"text\" [formControl]=\"$any(control)\" style=\"width: 100%;\">\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT NUMBER -->\r\n @case (editableTypes.number) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-input-number *ngVar=\"col.editable.data as numberData\" [formControl]=\"$any(control)\" [mode]=\"numberData.mode\" [minFractionDigits]=\"numberData.minFractionDigits\" [maxFractionDigits]=\"numberData.maxFractionDigits\" [currency]=\"numberData.currency\" [useGrouping]=\"numberData.useGrouping\" [allowEmpty]=\"numberData.allowEmpty\" [showClear]=\"numberData.showClear\" [showButtons]=\"numberData.showButtons\" [prefix]=\"numberData.prefix\" [suffix]=\"numberData.suffix\">\r\n </ui-input-number>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT SWITCH -->\r\n @case (editableTypes.switch) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-toggle-switch [formControl]=\"$any(control)\"></ui-toggle-switch>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT TEXT AREA -->\r\n @case (editableTypes.area) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <textarea smzTextarea type=\"text\" [formControl]=\"$any(control)\" [rows]=\"$any(col.editable.data).rows\" required style=\"width: 100%;\"></textarea>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT DROPDOWN -->\r\n @case (editableTypes.dropdown) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-select appendTo=\"body\" [formControl]=\"$any(control)\" styleClass=\"w-full\" [options]=\"col.editable.data | editableSource\" optionLabel=\"name\" dataKey=\"id\" [placeholder]=\"$any(col.editable.data).placeholder\" [showClear]=\"!col.editable.validatorsPreset?.isRequired\" [filter]=\"true\"></ui-select>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT CALENDAR -->\r\n @case (editableTypes.calendar) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-date-picker [formControl]=\"$any(control)\" appendTo=\"body\" styleClass=\"w-full\" [ngClass]=\"{ 'pl-5': !control.valid }\"></ui-date-picker>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n }\r\n </ng-template>\r\n <!-- CELULAR COM CONTE\u00DADO -->\r\n <ng-template smzTemplate=\"output\">\r\n <smz-table-content\r\n [col]=\"col\"\r\n [smzTooltip]=\"col.content.tooltip != null ? col.content.tooltip(item) : null\"\r\n tooltipPosition=\"left\"\r\n [ngClass]=\"col.content.contentStyleClass\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\">\r\n </smz-table-content>\r\n </ng-template>\r\n </p-cellEditor>\r\n </td>\r\n }\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) {\r\n <td [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"grid grid-nogutter items-center justify-center\">\r\n @if (clonedData.showSkeleton) {\r\n <div class=\"w-full\">\r\n <ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton>\r\n </div>\r\n } @else {\r\n <!-- SEM EDITAR -->\r\n @if (!editing) {\r\n @if (context.state.editable.update.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-pencil\" (click)=\"editableService.onRowEditInit(item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.update.isButtonDisabled || (!context.state.editable.update.condition(item))\" pInitEditableRow [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (context.state.editable.remove.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" (click)=\"editableService.onRowRemove($event, table, item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.remove.isButtonDisabled || (!context.state.editable.remove.condition(item))\" [rounded]=\"true\" variant=\"text\" severity=\"secondary\"></button>\r\n }\r\n }\r\n <!-- EDITANDO -->\r\n @if (editing) {\r\n @if (editableService.context[item.id]; as editableContext) {\r\n <!-- COM LOADING -->\r\n @if (editableContext.isLoading) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-rotate fa-spin\" [disabled]=\"true\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-info\"></button>\r\n }\r\n <!-- SEM LOADING -->\r\n @if (!editableContext.isLoading) {\r\n <!-- EDITANDO -->\r\n @if (!editableContext.hasErrors) {\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowCreateSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowEditSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n <!-- COM ERRORS -->\r\n @if (editableContext.hasErrors) {\r\n <ui-popover #errorsOverlay appendTo=\"body\" [style]=\"{ width: '450px' }\">\r\n <div [innerHtml]=\"editableContext.errors | contentErrors\"></div>\r\n </ui-popover>\r\n <button smzButton type=\"button\" icon=\"fas fa-exclamation-triangle\" [disabled]=\"false\" class=\"mr-2\" (click)=\"errorsOverlay.toggle($event)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n }\r\n }\r\n }\r\n <!-- CUSTOM MENU -->\r\n @if (context.state.actions.customActions.isVisible && !editing) {\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: item }\"></ng-container>\r\n }\r\n <!-- MENU -->\r\n @if (context.state.actions.menu.isVisible && !editing) {\r\n <smz-menu [callback]=\"context.state.actions.menu.callback\" [items]=\"context.state.actions.menu.items\" [data]=\"item\" [behavior]=\"context.state.actions.menu.behavior\" [ngClass]=\"{ 'ml-2': context.state.actions.customActions.isVisible }\" [icon]=\"context.state.actions.menu.styles.icon\" [styleClass]=\"context.state.actions.menu.styles.styleClass\" [buttonClass]=\"context.state.actions.menu.styles.buttonClass\" [testId]=\"buildRowMenuTestId(item, rowIndex)\"></smz-menu>\r\n }\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n @if (item?._isExpanded) {\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\">\r\n <ng-container *ngTemplateOutlet=\"rowContentTemplate; context: { $implicit: item }\"></ng-container>\r\n </td>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\" [ngStyle]=\"{ 'text-align': 'center' }\">\r\n <div [innerHtml]=\"context.state.emptyFeedback.message\"></div>\r\n @if (context.state.caption.clearFilters.isButtonVisible && hasFilters()) {\r\n <button smzButton [label]=\"context.state.locale.clearFilters.label\" class=\"mt-3\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" variant=\"outlined\"></button>\r\n }\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </ng-container>\r\n </ng-container>\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n" }]
22653
+ args: [{ selector: 'smz-ui-table', changeDetection: ChangeDetectionStrategy.OnPush, providers: [TableEditableService, TableFormsService], standalone: false, template: "@if (state | tableContext; as context) {\r\n @if ((context.state.emptyFeedback != null && (context.state.emptyFeedback.extraInfo || context.state.emptyFeedback.image || context.state.emptyFeedback.actionButtons)) && (items != null && items.length === 0) && context.state.emptyFeedback.isFeatured) {\r\n <smz-data-info\r\n [attr.data-testid]=\"buildTableTestId('empty')\"\r\n [image]=\"context.state.emptyFeedback.image\"\r\n [message]=\"context.state.emptyFeedback.message\"\r\n [callbackInfo]=\"context.state.emptyFeedback.extraInfo\"\r\n [actions]=\"context.state.emptyFeedback.actionButtons\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n <ng-container *ngVar=\"state.source?.items$ != null ? (state.source.items$ | async) : null as observableSource\">\r\n <ng-container *ngVar=\"state.source?.signalItems != null ? state.source.signalItems() : null as signalSource\">\r\n @if (((observableSource ?? signalSource ?? items) | cloneTableItems : context: tableKey: context.state.rowExpansion.sincronize); as clonedData) {\r\n <p-table #dt\r\n dataKey=\"id\"\r\n editMode=\"row\"\r\n [stripedRows]=\"context.state.styles.striped\"\r\n [value]=\"clonedData.items\"\r\n [(selection)]=\"selectedItems\"\r\n [tableStyleClass]=\"context.state.styles.tableStyleClass\"\r\n [size]=\"context.state.styles.size === 'extra-small' ? 'small' : context.state.styles.size === 'small' ? 'small' : context.state.styles.size === 'large' ? 'large' : undefined\"\r\n [class]=\"'p-datatable-smz-ui-table' + (context.state.styles.showGrid ? ' p-datatable-gridlines' : '') + (context.state.styles.size === 'extra-small' ? ' p-datatable-xs' : '') + (context.state.styles.size === 'small' ? ' p-datatable-sm' : '') + (context.state.styles.size === 'large' ? ' p-datatable-lg' : '')\"\r\n [rowHover]=\"context.state.actions.rowBehavior.hoverable\"\r\n [rows]=\"context.state.pagination.rows\"\r\n [first]=\"context.state.pagination.state.first\"\r\n [showCurrentPageReport]=\"context.state.pagination.pageReport.isVisible\"\r\n [rowsPerPageOptions]=\"context.state.pagination.rowsPerPageOptions\"\r\n [loading]=\"loading || isViewportInitializing\"\r\n [style.visibility]=\"isViewportInitializing ? 'hidden' : null\"\r\n [paginator]=\"context.state.pagination.isVisible\"\r\n paginatorDropdownAppendTo=\"body\"\r\n [currentPageReportTemplate]=\"context.state.locale.paginator.template\"\r\n [sortField]=\"context.state.sort.field\"\r\n [sortMode]=\"context.state.sort.mode\"\r\n [sortOrder]=\"context.state.sort.order\"\r\n [multiSortMeta]=\"context.state.sort.multiSortMeta\"\r\n [scrollable]=\"context.state.viewport.scrollable\"\r\n [scrollHeight]=\"context.state.viewport.scrollHeight\"\r\n [filterDelay]=\"0\"\r\n [globalFilterFields]=\"context.globalFilter\"\r\n [columns]=\"context.visibleColumns\"\r\n [frozenColumns]=\"context.frozenColumns\"\r\n [frozenWidth]=\"context.state.frozen.isEnabled ? context.state.frozen.width : null\"\r\n [resizableColumns]=\"context.state.viewport.resizableColumns\"\r\n [columnResizeMode]=\"context.state.viewport.columnResizeMode\"\r\n (onPage)=\"onPage($event)\"\r\n (onFilter)=\"onFilter($event)\"\r\n (selectionChange)=\"emitSelection($event)\"\r\n >\r\n @if (context.state.caption.isVisible) {\r\n <ng-template smzTemplate=\"caption\">\r\n <div class=\"flex flex-wrap items-center gap-2\" [attr.data-testid]=\"buildTableTestId('caption')\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n @if (context.state.caption.title != null) {\r\n <div class=\"flex-1 database-title\" [attr.data-testid]=\"buildTableTestId('title')\" [innerHTML]=\"context.state.caption.title\"></div>\r\n }\r\n <ng-container *ngTemplateOutlet=\"captionTemplate; context: { $implicit: dt }\"></ng-container>\r\n <smz-table-caption-buttons [buttons]=\"context.state.caption.buttons\" [tableTestId]=\"state.tableTestId\"></smz-table-caption-buttons>\r\n @if (context.state.caption.exportToPdf.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-pdf')\" [label]=\"context.state.locale.exportToPdf.label\" icon=\"fa-solid fa-file-pdf\" (click)=\"exportToPdf(context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.exportToExcel.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('export-excel')\" [label]=\"context.state.locale.exportToExcel.label\" icon=\"fa-solid fa-file-excel\" (click)=\"exportToExcel(table, context, clonedData.items)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.editable.creation.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('create')\" [label]=\"context.state.editable.creation.buttonLabel\" icon=\"fa-solid fa-plus\" (click)=\"editableService.onRowCreateInit(table, context.columns)\" [disabled]=\"clonedData.showSkeleton || editableService.isEditing || editableService.isCreating || context.state.editable.creation.isButtonDisabled\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.rowSelection.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-selection')\" [label]=\"context.state.locale.rowSelection.label\" icon=\"fa-solid fa-check-double\" (click)=\"onRowSelection(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.rowExpansion.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('row-expansion')\" [label]=\"context.state.rowExpansion.label\" icon=\"fa-solid fa-list\" (click)=\"onRowExpansion(context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.clearFilters.isButtonVisible) {\r\n <button smzButton [attr.data-testid]=\"buildTableTestId('clear-filters')\" [label]=\"context.state.locale.clearFilters.label\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" [disabled]=\"clonedData.showSkeleton\" variant=\"outlined\"></button>\r\n }\r\n @if (context.state.caption.columnVisibility.showDropdownSelector) {\r\n <ui-multi-select #columnMultiselect [attr.data-testid]=\"buildTableTestId('column-visibility')\" class=\"ml-2 w-full flex-none md:w-2/12\" styleClass=\"w-full\" appendTo=\"body\" [options]=\"context.hideableColumns\" [(ngModel)]=\"selectedColumns\" [placeholder]=\"context.state.locale.columnVisibility.placeholder\" [selectedItemsLabel]=\"context.state.locale.columnVisibility.selectedItemsLabel\" optionLabel=\"name\" dataKey=\"field\" optionLabel=\"header\" [filter]=\"true\" (panelHide)=\"updateColumnsVisibility(true)\" [smzTooltip]=\"context.state.locale.columnVisibility.pTooltip\">\r\n </ui-multi-select>\r\n }\r\n @if (context.state.caption.globalFilter.isVisible) {\r\n <ui-icon-field class=\"w-full flex-none\" [ngClass]=\"{ 'md:w-2/12 flex-none': !context.state.caption.globalFilter.expanded }\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal [(ngModel)]=\"globalSearchInput\" smzInputText type=\"text\" styleClass=\"database-global-search\" (input)=\"updateGlobalFilter(inputGlobal.value)\" [disabled]=\"clonedData.showSkeleton\" [placeholder]=\"context.state.locale.globalFilter.placeholder\" [attr.data-testid]=\"buildTableTestId('search')\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"flex flex-wrap items-center mt-2\" [ngClass]=\"'justify-' + context.state.caption.toolbarAlignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </ng-template>\r\n }\r\n <ng-template smzTemplate=\"header\" let-columns>\r\n <tr [ngClass]=\"{ 'invisible-header': !context.state.header.isVisible }\">\r\n @if (context.state.caption.rowSelection.isEnabled) {\r\n <th [ngStyle]=\"context.state.caption.rowSelection.ngStyle\">\r\n @if (!context.state.actions.batchActions.isVisible) {\r\n <p-tableHeaderCheckbox></p-tableHeaderCheckbox>\r\n }\r\n </th>\r\n }\r\n @if (context.state.rowExpansion.isEnabled) {\r\n <th [ngStyle]=\"context.state.rowExpansion.ngStyle\"></th>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (context.state.viewport.resizableColumns) {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th pResizableColumn [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n } @else {\r\n @if (col.isOrderable) {\r\n <th [pSortableColumn]=\"col.sortField\" [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n @if (!col.isOrderable) {\r\n <th [attr.data-testid]=\"buildColumnTestId(col.field)\" [ngStyle]=\"col.content.ngStyle\" [ngClass]=\"col.headerStyleClass\">\r\n <ng-container *ngTemplateOutlet=\"headerContent\"></ng-container>\r\n </th>\r\n }\r\n }\r\n <ng-template #headerContent>\r\n <div class=\"flex justify-start items-center\">\r\n <span class=\"mr-1\">{{ col.header }}</span>\r\n @if (col.showHeaderActions) {\r\n <smz-table-header-actions clickStopPropagation class=\"ml-1 mt-1\" [col]=\"col\"></smz-table-header-actions>\r\n }\r\n @if (!clonedData.showSkeleton && col.isOrderable) {\r\n <p-sortIcon [field]=\"col.sortField\"></p-sortIcon>\r\n }\r\n @if (!clonedData.showSkeleton) {\r\n @switch (col.filter.type) {\r\n @case (filterTypes.currency) {\r\n <smz-column-filter type=\"numeric\" currency=\"BRL\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.numeric) {\r\n <smz-column-filter type=\"numeric\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.date) {\r\n <smz-column-filter type=\"date\" [field]=\"col.filterField\" [showTime]=\"col.filter.showTime\"></smz-column-filter>\r\n }\r\n @case (filterTypes.text) {\r\n <smz-column-filter type=\"text\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.boolean) {\r\n <smz-column-filter type=\"boolean\" [field]=\"col.filterField\"></smz-column-filter>\r\n }\r\n @case (filterTypes.dropdown) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField + '.id'\" matchMode=\"dropdown\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-select appendTo=\"body\" [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"in\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_array) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"array-some\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField + '.id' : filterField : null : 'name' : true\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" optionLabel=\"name\" dataKey=\"id\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n @case (filterTypes.multiselect_string) {\r\n @if (col.filterField | filterObject; as filterField) {\r\n <smz-column-filter [field]=\"filterField\" matchMode=\"multiselectByString\" [showMatchModes]=\"false\" [showOperator]=\"false\" [showAddButton]=\"false\">\r\n <ng-template smzTemplate=\"header\">\r\n <div class=\"px-3 pt-3 pb-0\">\r\n <span class=\"p-text-bold\">{{ col.header }}</span>\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"filter\" let-value let-filter=\"filter\">\r\n <ui-multi-select [ngModel]=\"value\" [options]=\"(clonedData.items != null ? clonedData.items : []) | uniqueFilter : filterField : filterField : null : true : false : false\" [placeholder]=\"context.state.locale.dropdownFilter.placeholder\" (changed)=\"filter($event.value)\" [maxSelectedLabels]=\"2\" [selectedItemsLabel]=\"'{0}'\"></ui-multi-select>\r\n </ng-template>\r\n </smz-column-filter>\r\n }\r\n }\r\n }\r\n }\r\n @if (context.state.caption.columnVisibility.showColumnHideButton) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-eye-slash\" (click)=\"hideColumn(col, context)\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible|| context.state.editable.isEditable) {\r\n <th [ngStyle]=\"context.state.editable.isEditable ? context.state.editable.ngStyle : context.state.actions.customActions.ngStyle\"></th>\r\n }\r\n </tr>\r\n @if (context.state.actions.batchActions.isVisible) {\r\n <tr>\r\n <th [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\"\r\n [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"flex flex-wrap items-center justify-start\">\r\n <p-tableHeaderCheckbox class=\"mr-4\"></p-tableHeaderCheckbox>\r\n @if (selectedItems?.length > 0) {\r\n @for (batchItem of context.state.actions.batchActions.items; track batchItem.label) {\r\n @if (batchItem.visible) {\r\n <button smzButton [label]=\"batchItem.label\" class=\"animate__animated animate__fadeIn\" [styleClass]=\"'p-button-plain ' + (batchItem.styleClass)\" [icon]=\"batchItem.icon\" (click)=\"batchItem.command(selectedItems); selectedItems = [];\" [disabled]=\"batchItem.disabled\" [smzTooltip]=\"batchItem.tooltip\" [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n }\r\n }\r\n </div>\r\n </th>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"body\" let-item let-editing=\"editing\" let-rowIndex=\"rowIndex\" let-columns=\"columns\">\r\n <tr #editableRowElement\r\n [pEditableRow]=\"item\"\r\n tableItemAction\r\n [isClickable]=\"context.state.actions.rowBehavior.isClickable\"\r\n [callback]=\"context.state.actions.rowBehavior.clickCallback\"\r\n [expandRowOnClick]=\"context.state.actions.rowBehavior.expandRowOnClick\"\r\n [item]=\"item\"\r\n class=\"p-selectable-row\"\r\n [attr.data-testid]=\"buildRowTestId(item, rowIndex)\"\r\n [ngClass]=\"{ 'highlight-row': item?.id === state.actions.rowBehavior.highlights, 'preserve-in-small': state.actions.rowBehavior.preserveLayoutInSmallDevices }\"\r\n >\r\n @if (context.state.caption.rowSelection.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\"\r\n [ngStyle]=\"context.state.caption.rowSelection.ngStyle\"\r\n >\r\n <p-tableCheckbox [value]=\"item\"></p-tableCheckbox>\r\n </td>\r\n }\r\n @if (context.state.rowExpansion.isEnabled && !clonedData.showSkeleton) {\r\n <td\r\n clickStopPropagation\r\n class=\"{{ state.actions.rowBehavior.cellStyleClass }}\"\r\n [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading, 'flex flex-wrap justify-start items-center gap-2': context.state.rowExpansion.highlightNewItems && item._isNew }\"\r\n [ngStyle]=\"context.state.rowExpansion.ngStyle\"\r\n >\r\n <button smzButton type=\"button\" class=\"smz-table-row-expansion-toggle\" [icon]=\"item._isExpanded ? 'fa-solid fa-chevron-down' : 'fa-solid fa-chevron-right'\" (click)=\"item._isExpanded = !item._isExpanded; item._isNew = false\" variant=\"text\" [rounded]=\"true\" size=\"sm\"></button>\r\n @if (context.state.rowExpansion.highlightNewItems && item._isNew) {\r\n <div class=\"rounded bg-cyan-400 text-sm text-white px-2 py-0 smz-table-new-tag\" (click)=\"item._isNew = false\">{{ context.state.rowExpansion.highlightLabel }}</div>\r\n }\r\n </td>\r\n }\r\n @for (col of columns; track col.field) {\r\n @if (clonedData.showSkeleton) {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [ngStyle]=\"col.content.ngStyle\"><ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton></td>\r\n } @else {\r\n <td class=\"{{ state.actions.rowBehavior.cellStyleClass }}\" [attr.data-testid]=\"buildCellTestId(item, rowIndex, col.field)\" [ngClass]=\"{ 'opacity-50 pointer-events-none': editableService.context[item.id]?.hasErrors || editableService.context[item.id]?.isLoading }\" [ngStyle]=\"col.content.ngStyle\">\r\n <span class=\"p-column-title\">{{ col.header }}</span>\r\n <p-cellEditor>\r\n <!-- CELULAR COM EDITOR -->\r\n <ng-template smzTemplate=\"input\">\r\n @switch (col.editable.type) {\r\n @case (editableTypes.none) {\r\n <smz-table-content class=\"cursor-default\" [ngClass]=\"col.content.contentStyleClass\" [col]=\"col\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\"></smz-table-content>\r\n }\r\n @case (editableTypes.custom) {\r\n <ng-container *ngTemplateOutlet=\"editableTemplate; context: { $implicit: item, col: col }\"></ng-container>\r\n }\r\n <!-- INPUT TEXT -->\r\n @case (editableTypes.text) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <input smzInputText type=\"text\" [formControl]=\"$any(control)\" style=\"width: 100%;\">\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT NUMBER -->\r\n @case (editableTypes.number) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-input-number *ngVar=\"col.editable.data as numberData\" [formControl]=\"$any(control)\" [mode]=\"numberData.mode\" [minFractionDigits]=\"numberData.minFractionDigits\" [maxFractionDigits]=\"numberData.maxFractionDigits\" [currency]=\"numberData.currency\" [useGrouping]=\"numberData.useGrouping\" [allowEmpty]=\"numberData.allowEmpty\" [showClear]=\"numberData.showClear\" [showButtons]=\"numberData.showButtons\" [prefix]=\"numberData.prefix\" [suffix]=\"numberData.suffix\">\r\n </ui-input-number>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT SWITCH -->\r\n @case (editableTypes.switch) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-toggle-switch [formControl]=\"$any(control)\"></ui-toggle-switch>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT TEXT AREA -->\r\n @case (editableTypes.area) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <textarea smzTextarea type=\"text\" [formControl]=\"$any(control)\" [rows]=\"$any(col.editable.data).rows\" required style=\"width: 100%;\"></textarea>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT DROPDOWN -->\r\n @case (editableTypes.dropdown) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-select appendTo=\"body\" [formControl]=\"$any(control)\" styleClass=\"w-full\" [options]=\"col.editable.data | editableSource\" optionLabel=\"name\" dataKey=\"id\" [placeholder]=\"$any(col.editable.data).placeholder\" [showClear]=\"!col.editable.validatorsPreset?.isRequired\" [filter]=\"true\"></ui-select>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n <!-- INPUT CALENDAR -->\r\n @case (editableTypes.calendar) {\r\n @if (editableService.context[item.id]?.form; as form) {\r\n @if (form.controls[col.editable.property]; as control) {\r\n <div class=\"relative w-full\">\r\n <ui-date-picker [formControl]=\"$any(control)\" appendTo=\"body\" styleClass=\"w-full\" [ngClass]=\"{ 'pl-5': !control.valid }\"></ui-date-picker>\r\n <smz-table-validation-messages [errors]=\"control.errors\" [messages]=\"uiConfig.dialogs.forms.validationMessages\" [isFormInvalid]=\"form.invalid\" [isFormDirty]=\"form.dirty\"></smz-table-validation-messages>\r\n </div>\r\n }\r\n }\r\n }\r\n }\r\n </ng-template>\r\n <!-- CELULAR COM CONTE\u00DADO -->\r\n <ng-template smzTemplate=\"output\">\r\n <smz-table-content\r\n [col]=\"col\"\r\n [smzTooltip]=\"col.content.tooltip != null ? col.content.tooltip(item) : null\"\r\n tooltipPosition=\"left\"\r\n [ngClass]=\"col.content.contentStyleClass\" [contentTypes]=\"contentTypes\" [item]=\"item\" [rowIndex]=\"rowIndex\" [contentTemplate]=\"contentTemplate\">\r\n </smz-table-content>\r\n </ng-template>\r\n </p-cellEditor>\r\n </td>\r\n }\r\n }\r\n @if (context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) {\r\n <td [ngStyle]=\"context.state.actions.customActions.ngStyle\" class=\"px-0\">\r\n <div class=\"flex flex-wrap items-center justify-center\">\r\n @if (clonedData.showSkeleton) {\r\n <div class=\"w-full\">\r\n <ui-skeleton width=\"100%\" height=\"1rem\"></ui-skeleton>\r\n </div>\r\n } @else {\r\n <!-- SEM EDITAR -->\r\n @if (!editing) {\r\n @if (context.state.editable.update.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-pencil\" (click)=\"editableService.onRowEditInit(item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.update.isButtonDisabled || (!context.state.editable.update.condition(item))\" pInitEditableRow [rounded]=\"true\" variant=\"text\"></button>\r\n }\r\n @if (context.state.editable.remove.isButtonVisible) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-trash\" (click)=\"editableService.onRowRemove($event, table, item)\" class=\"mx-1\" [disabled]=\"editableService.isEditing || editableService.isCreating || context.state.editable.remove.isButtonDisabled || (!context.state.editable.remove.condition(item))\" [rounded]=\"true\" variant=\"text\" severity=\"secondary\"></button>\r\n }\r\n }\r\n <!-- EDITANDO -->\r\n @if (editing) {\r\n @if (editableService.context[item.id]; as editableContext) {\r\n <!-- COM LOADING -->\r\n @if (editableContext.isLoading) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-rotate fa-spin\" [disabled]=\"true\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-info\"></button>\r\n }\r\n <!-- SEM LOADING -->\r\n @if (!editableContext.isLoading) {\r\n <!-- EDITANDO -->\r\n @if (!editableContext.hasErrors) {\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowCreateSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" (click)=\"editableService.onRowEditSave($event, table, editableRowElement, item)\" [disabled]=\"!editableContext.hasChanged || !editableService.context[item.id]?.form.valid\" class=\"mr-2\" [rounded]=\"true\" variant=\"text\" severity=\"success\"></button>\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n <!-- COM ERRORS -->\r\n @if (editableContext.hasErrors) {\r\n <ui-popover #errorsOverlay appendTo=\"body\" [style]=\"{ width: '450px' }\">\r\n <div [innerHtml]=\"editableContext.errors | contentErrors\"></div>\r\n </ui-popover>\r\n <button smzButton type=\"button\" icon=\"fas fa-exclamation-triangle\" [disabled]=\"false\" class=\"mr-2\" (click)=\"errorsOverlay.toggle($event)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n <!-- CRIANDO -->\r\n @if (item._context?.isCreating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowCreateCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n <!-- ATUALIZANDO -->\r\n @if (item._context?.isUpdating) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" (click)=\"editableService.onRowEditCancel($event, table, item)\" size=\"sm\" [rounded]=\"true\" variant=\"text\" severity=\"danger\"></button>\r\n }\r\n }\r\n }\r\n }\r\n }\r\n <!-- CUSTOM MENU -->\r\n @if (context.state.actions.customActions.isVisible && !editing) {\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: item }\"></ng-container>\r\n }\r\n <!-- MENU -->\r\n @if (context.state.actions.menu.isVisible && !editing) {\r\n <smz-menu [callback]=\"context.state.actions.menu.callback\" [items]=\"context.state.actions.menu.items\" [data]=\"item\" [behavior]=\"context.state.actions.menu.behavior\" [ngClass]=\"{ 'ml-2': context.state.actions.customActions.isVisible }\" [icon]=\"context.state.actions.menu.styles.icon\" [styleClass]=\"context.state.actions.menu.styles.styleClass\" [buttonClass]=\"context.state.actions.menu.styles.buttonClass\" [testId]=\"buildRowMenuTestId(item, rowIndex)\"></smz-menu>\r\n }\r\n }\r\n </div>\r\n </td>\r\n }\r\n </tr>\r\n @if (item?._isExpanded) {\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\">\r\n <ng-container *ngTemplateOutlet=\"rowContentTemplate; context: { $implicit: item }\"></ng-container>\r\n </td>\r\n </tr>\r\n }\r\n </ng-template>\r\n <ng-template smzTemplate=\"emptymessage\" let-columns>\r\n <tr>\r\n <td [attr.colspan]=\"columns.length + ((context.state.actions.menu.isVisible || context.state.actions.customActions.isVisible || context.state.editable.isEditable) ? 1 : 0) + (context.state.caption.rowSelection.isEnabled ? 1 : 0) + (context.state.rowExpansion.isEnabled ? 1 : 0)\" [ngStyle]=\"{ 'text-align': 'center' }\">\r\n <div [innerHtml]=\"context.state.emptyFeedback.message\"></div>\r\n @if (context.state.caption.clearFilters.isButtonVisible && hasFilters()) {\r\n <button smzButton [label]=\"context.state.locale.clearFilters.label\" class=\"mt-3\" icon=\"fa-solid fa-filter-circle-xmark\" (click)=\"clear(table, context)\" variant=\"outlined\"></button>\r\n }\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n }\r\n </ng-container>\r\n </ng-container>\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n" }]
22654
22654
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: TableEditableService }, { type: TableFormsService }, { type: TableHelperService }, { type: i1$3.Store }, { type: SmzExcelService }], propDecorators: { templates: [{
22655
22655
  type: ContentChildren,
22656
22656
  args: [SmzTemplateDirective]
@@ -23159,11 +23159,11 @@ class TableContentComponent {
23159
23159
  }
23160
23160
  onValidationError$ = new BehaviorSubject(null);
23161
23161
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: TableContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23162
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: TableContentComponent, isStandalone: false, selector: "smz-table-content", inputs: { items$: "items$", state: "state" }, ngImport: i0, template: "@if (onValidationError$ | async; as onValidationError) {\r\n <div class=\"grid grid-nogutter items-center justify-end w-full\">\r\n @if (onValidationError) {\r\n <span style=\"color: red\">* Precisa selecionar pelo menos um item</span>\r\n }\r\n </div>\r\n}\r\n<smz-ui-table #smzdt [items]=\"items$ | async\" [state]=\"state\" (validChange)=\"tableValid = $event\"></smz-ui-table>", styles: [""], dependencies: [{ kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23162
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: TableContentComponent, isStandalone: false, selector: "smz-table-content", inputs: { items$: "items$", state: "state" }, ngImport: i0, template: "@if (onValidationError$ | async; as onValidationError) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full\">\r\n @if (onValidationError) {\r\n <span style=\"color: red\">* Precisa selecionar pelo menos um item</span>\r\n }\r\n </div>\r\n}\r\n<smz-ui-table #smzdt [items]=\"items$ | async\" [state]=\"state\" (validChange)=\"tableValid = $event\"></smz-ui-table>", styles: [""], dependencies: [{ kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23163
23163
  }
23164
23164
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: TableContentComponent, decorators: [{
23165
23165
  type: Component,
23166
- args: [{ selector: 'smz-table-content', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (onValidationError$ | async; as onValidationError) {\r\n <div class=\"grid grid-nogutter items-center justify-end w-full\">\r\n @if (onValidationError) {\r\n <span style=\"color: red\">* Precisa selecionar pelo menos um item</span>\r\n }\r\n </div>\r\n}\r\n<smz-ui-table #smzdt [items]=\"items$ | async\" [state]=\"state\" (validChange)=\"tableValid = $event\"></smz-ui-table>" }]
23166
+ args: [{ selector: 'smz-table-content', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (onValidationError$ | async; as onValidationError) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full\">\r\n @if (onValidationError) {\r\n <span style=\"color: red\">* Precisa selecionar pelo menos um item</span>\r\n }\r\n </div>\r\n}\r\n<smz-ui-table #smzdt [items]=\"items$ | async\" [state]=\"state\" (validChange)=\"tableValid = $event\"></smz-ui-table>" }]
23167
23167
  }], propDecorators: { items$: [{
23168
23168
  type: Input
23169
23169
  }], state: [{
@@ -23193,11 +23193,11 @@ class SmzDocumentTitleComponent {
23193
23193
  constructor() { }
23194
23194
  ngOnInit() { }
23195
23195
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23196
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzDocumentTitleComponent, isStandalone: false, selector: "smz-document-title", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-center justify-center h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
23196
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzDocumentTitleComponent, isStandalone: false, selector: "smz-document-title", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-center justify-center h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
23197
23197
  }
23198
23198
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentTitleComponent, decorators: [{
23199
23199
  type: Component,
23200
- args: [{ selector: 'smz-document-title', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-center justify-center h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>" }]
23200
+ args: [{ selector: 'smz-document-title', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-center justify-center h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>" }]
23201
23201
  }], ctorParameters: () => [], propDecorators: { data: [{
23202
23202
  type: Input
23203
23203
  }], config: [{
@@ -23229,11 +23229,11 @@ class SmzDocumentFieldComponent {
23229
23229
  constructor() { }
23230
23230
  ngOnInit() { }
23231
23231
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23232
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentFieldComponent, isStandalone: false, selector: "smz-document-field", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (data.label.isVisible) {\r\n <div\r\n [ngClass]=\"data.label.styles\"\r\n [style.color]=\"data.label.color\"\r\n [innerHtml]=\"data.label.value | safeHtml\"\r\n >\r\n </div>\r\n }\r\n\r\n <div\r\n [style.font-weight]=\"data.text.fontWeight\"\r\n [ngClass]=\"data.text.styles\"\r\n [style.color]=\"data.text.color\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
23232
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentFieldComponent, isStandalone: false, selector: "smz-document-field", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (data.label.isVisible) {\r\n <div\r\n [ngClass]=\"data.label.styles\"\r\n [style.color]=\"data.label.color\"\r\n [innerHtml]=\"data.label.value | safeHtml\"\r\n >\r\n </div>\r\n }\r\n\r\n <div\r\n [style.font-weight]=\"data.text.fontWeight\"\r\n [ngClass]=\"data.text.styles\"\r\n [style.color]=\"data.text.color\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
23233
23233
  }
23234
23234
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentFieldComponent, decorators: [{
23235
23235
  type: Component,
23236
- args: [{ selector: 'smz-document-field', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (data.label.isVisible) {\r\n <div\r\n [ngClass]=\"data.label.styles\"\r\n [style.color]=\"data.label.color\"\r\n [innerHtml]=\"data.label.value | safeHtml\"\r\n >\r\n </div>\r\n }\r\n\r\n <div\r\n [style.font-weight]=\"data.text.fontWeight\"\r\n [ngClass]=\"data.text.styles\"\r\n [style.color]=\"data.text.color\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>" }]
23236
+ args: [{ selector: 'smz-document-field', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (data.label.isVisible) {\r\n <div\r\n [ngClass]=\"data.label.styles\"\r\n [style.color]=\"data.label.color\"\r\n [innerHtml]=\"data.label.value | safeHtml\"\r\n >\r\n </div>\r\n }\r\n\r\n <div\r\n [style.font-weight]=\"data.text.fontWeight\"\r\n [ngClass]=\"data.text.styles\"\r\n [style.color]=\"data.text.color\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>" }]
23237
23237
  }], ctorParameters: () => [], propDecorators: { data: [{
23238
23238
  type: Input
23239
23239
  }], config: [{
@@ -23269,11 +23269,11 @@ class SmzDocumentImageComponent {
23269
23269
  xhr.send();
23270
23270
  }
23271
23271
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentImageComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
23272
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentImageComponent, isStandalone: false, selector: "smz-document-image", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (base64 != null) {\r\n <img\r\n [src]=\"base64 | safeUrl\"\r\n [ngClass]=\"data.image.styles\"\r\n [style.width]=\"data.image.width\"/>\r\n }\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeUrlPipe$1, name: "safeUrl" }] });
23272
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentImageComponent, isStandalone: false, selector: "smz-document-image", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (base64 != null) {\r\n <img\r\n [src]=\"base64 | safeUrl\"\r\n [ngClass]=\"data.image.styles\"\r\n [style.width]=\"data.image.width\"/>\r\n }\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeUrlPipe$1, name: "safeUrl" }] });
23273
23273
  }
23274
23274
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentImageComponent, decorators: [{
23275
23275
  type: Component,
23276
- args: [{ selector: 'smz-document-image', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (base64 != null) {\r\n <img\r\n [src]=\"base64 | safeUrl\"\r\n [ngClass]=\"data.image.styles\"\r\n [style.width]=\"data.image.width\"/>\r\n }\r\n\r\n</div>" }]
23276
+ args: [{ selector: 'smz-document-image', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-start justify-center flex-col h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @if (base64 != null) {\r\n <img\r\n [src]=\"base64 | safeUrl\"\r\n [ngClass]=\"data.image.styles\"\r\n [style.width]=\"data.image.width\"/>\r\n }\r\n\r\n</div>" }]
23277
23277
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { data: [{
23278
23278
  type: Input
23279
23279
  }], config: [{
@@ -23305,11 +23305,11 @@ class SmzDocumentSubTitleComponent {
23305
23305
  constructor() { }
23306
23306
  ngOnInit() { }
23307
23307
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentSubTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23308
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzDocumentSubTitleComponent, isStandalone: false, selector: "smz-document-sub-title", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-center justify-start h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
23308
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzDocumentSubTitleComponent, isStandalone: false, selector: "smz-document-sub-title", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-center justify-start h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }] });
23309
23309
  }
23310
23310
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentSubTitleComponent, decorators: [{
23311
23311
  type: Component,
23312
- args: [{ selector: 'smz-document-sub-title', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-center justify-start h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>" }]
23312
+ args: [{ selector: 'smz-document-sub-title', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-center justify-start h-full relative avoid-break\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <div\r\n [style.color]=\"data.text.color\"\r\n [ngClass]=\"data.text.styles\"\r\n [innerHtml]=\"data.text.value | safeHtml\"\r\n >\r\n </div>\r\n\r\n</div>" }]
23313
23313
  }], ctorParameters: () => [], propDecorators: { data: [{
23314
23314
  type: Input
23315
23315
  }], config: [{
@@ -23323,11 +23323,11 @@ class SmzDocumentFieldsGroupComponent {
23323
23323
  constructor() { }
23324
23324
  ngOnInit() { }
23325
23325
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentFieldsGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23326
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentFieldsGroupComponent, isStandalone: false, selector: "smz-document-fields-group", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @for (field of data.fields; track field) {\r\n <smz-document-field [ngClass]=\"field.flexWidth\" [data]=\"field\" [config]=\"config\"></smz-document-field>\r\n }\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: SmzDocumentFieldComponent, selector: "smz-document-field", inputs: ["data", "config"] }] });
23326
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentFieldsGroupComponent, isStandalone: false, selector: "smz-document-fields-group", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @for (field of data.fields; track field) {\r\n <smz-document-field [ngClass]=\"field.flexWidth\" [data]=\"field\" [config]=\"config\"></smz-document-field>\r\n }\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: SmzDocumentFieldComponent, selector: "smz-document-field", inputs: ["data", "config"] }] });
23327
23327
  }
23328
23328
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentFieldsGroupComponent, decorators: [{
23329
23329
  type: Component,
23330
- args: [{ selector: 'smz-document-fields-group', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @for (field of data.fields; track field) {\r\n <smz-document-field [ngClass]=\"field.flexWidth\" [data]=\"field\" [config]=\"config\"></smz-document-field>\r\n }\r\n\r\n</div>" }]
23330
+ args: [{ selector: 'smz-document-fields-group', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n @for (field of data.fields; track field) {\r\n <smz-document-field [ngClass]=\"field.flexWidth\" [data]=\"field\" [config]=\"config\"></smz-document-field>\r\n }\r\n\r\n</div>" }]
23331
23331
  }], ctorParameters: () => [], propDecorators: { data: [{
23332
23332
  type: Input
23333
23333
  }], config: [{
@@ -23341,11 +23341,11 @@ class SmzDocumentTableComponent {
23341
23341
  constructor() { }
23342
23342
  ngOnInit() { }
23343
23343
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23344
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentTableComponent, isStandalone: false, selector: "smz-document-table", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <table class=\"w-full h-full border-collapse table-fixed smz-document-table-tag\" cellspacing=\"0\" cellpadding=\"0\">\r\n\r\n <thead>\r\n @if (data?.header.isVisible) {\r\n <tr class=\"relative\">\r\n @for (column of data?.header.columns; track column) {\r\n <th\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.headerStyles.background ?? data.header.background\"\r\n [style.color]=\"column.headerStyles.color ?? data.header.color\"\r\n [ngClass]=\"column.headerStyles.styles ?? data.header.styles\">\r\n {{ column.value }}\r\n </th>\r\n }\r\n </tr>\r\n }\r\n </thead>\r\n\r\n <tbody>\r\n @for (row of data?.content.items$ | async; track row; let index = $index) {\r\n <tr class=\"relative\" [style.background]=\"data.content.background\">\r\n @for (column of data?.header.columns; track column) {\r\n <td\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.contentStyles.background ?? data.content.background\"\r\n [style.color]=\"column.contentStyles.color ?? data.content.color\"\r\n [ngClass]=\"column.contentStyles.styles ?? data.content.styles\">\r\n <div [innerHtml]=\"((row | getData : column.property : column.dataTransform : index).result) | safeHtml\"></div>\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n\r\n </table>\r\n\r\n</div>\r\n\r\n", styles: ["smz-document-table .smz-document-table-tag table{page-break-inside:auto}smz-document-table .smz-document-table-tag div{page-break-inside:avoid}smz-document-table .smz-document-table-tag thead{display:table-header-group}smz-document-table .smz-document-table-tag tfoot{display:table-footer-group}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzGetDataPipe, name: "getData" }], encapsulation: i0.ViewEncapsulation.None });
23344
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentTableComponent, isStandalone: false, selector: "smz-document-table", inputs: { data: "data", config: "config" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <table class=\"w-full h-full border-collapse table-fixed smz-document-table-tag\" cellspacing=\"0\" cellpadding=\"0\">\r\n\r\n <thead>\r\n @if (data?.header.isVisible) {\r\n <tr class=\"relative\">\r\n @for (column of data?.header.columns; track column) {\r\n <th\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.headerStyles.background ?? data.header.background\"\r\n [style.color]=\"column.headerStyles.color ?? data.header.color\"\r\n [ngClass]=\"column.headerStyles.styles ?? data.header.styles\">\r\n {{ column.value }}\r\n </th>\r\n }\r\n </tr>\r\n }\r\n </thead>\r\n\r\n <tbody>\r\n @for (row of data?.content.items$ | async; track row; let index = $index) {\r\n <tr class=\"relative\" [style.background]=\"data.content.background\">\r\n @for (column of data?.header.columns; track column) {\r\n <td\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.contentStyles.background ?? data.content.background\"\r\n [style.color]=\"column.contentStyles.color ?? data.content.color\"\r\n [ngClass]=\"column.contentStyles.styles ?? data.content.styles\">\r\n <div [innerHtml]=\"((row | getData : column.property : column.dataTransform : index).result) | safeHtml\"></div>\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n\r\n </table>\r\n\r\n</div>\r\n\r\n", styles: ["smz-document-table .smz-document-table-tag table{page-break-inside:auto}smz-document-table .smz-document-table-tag div{page-break-inside:avoid}smz-document-table .smz-document-table-tag thead{display:table-header-group}smz-document-table .smz-document-table-tag tfoot{display:table-footer-group}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzGetDataPipe, name: "getData" }], encapsulation: i0.ViewEncapsulation.None });
23345
23345
  }
23346
23346
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentTableComponent, decorators: [{
23347
23347
  type: Component,
23348
- args: [{ selector: 'smz-document-table', encapsulation: ViewEncapsulation.None, standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <table class=\"w-full h-full border-collapse table-fixed smz-document-table-tag\" cellspacing=\"0\" cellpadding=\"0\">\r\n\r\n <thead>\r\n @if (data?.header.isVisible) {\r\n <tr class=\"relative\">\r\n @for (column of data?.header.columns; track column) {\r\n <th\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.headerStyles.background ?? data.header.background\"\r\n [style.color]=\"column.headerStyles.color ?? data.header.color\"\r\n [ngClass]=\"column.headerStyles.styles ?? data.header.styles\">\r\n {{ column.value }}\r\n </th>\r\n }\r\n </tr>\r\n }\r\n </thead>\r\n\r\n <tbody>\r\n @for (row of data?.content.items$ | async; track row; let index = $index) {\r\n <tr class=\"relative\" [style.background]=\"data.content.background\">\r\n @for (column of data?.header.columns; track column) {\r\n <td\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.contentStyles.background ?? data.content.background\"\r\n [style.color]=\"column.contentStyles.color ?? data.content.color\"\r\n [ngClass]=\"column.contentStyles.styles ?? data.content.styles\">\r\n <div [innerHtml]=\"((row | getData : column.property : column.dataTransform : index).result) | safeHtml\"></div>\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n\r\n </table>\r\n\r\n</div>\r\n\r\n", styles: ["smz-document-table .smz-document-table-tag table{page-break-inside:auto}smz-document-table .smz-document-table-tag div{page-break-inside:avoid}smz-document-table .smz-document-table-tag thead{display:table-header-group}smz-document-table .smz-document-table-tag tfoot{display:table-footer-group}\n"] }]
23348
+ args: [{ selector: 'smz-document-table', encapsulation: ViewEncapsulation.None, standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-stretch justify-start h-full w-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <table class=\"w-full h-full border-collapse table-fixed smz-document-table-tag\" cellspacing=\"0\" cellpadding=\"0\">\r\n\r\n <thead>\r\n @if (data?.header.isVisible) {\r\n <tr class=\"relative\">\r\n @for (column of data?.header.columns; track column) {\r\n <th\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.headerStyles.background ?? data.header.background\"\r\n [style.color]=\"column.headerStyles.color ?? data.header.color\"\r\n [ngClass]=\"column.headerStyles.styles ?? data.header.styles\">\r\n {{ column.value }}\r\n </th>\r\n }\r\n </tr>\r\n }\r\n </thead>\r\n\r\n <tbody>\r\n @for (row of data?.content.items$ | async; track row; let index = $index) {\r\n <tr class=\"relative\" [style.background]=\"data.content.background\">\r\n @for (column of data?.header.columns; track column) {\r\n <td\r\n class=\"relative\"\r\n [colSpan]=\"column.colspan\"\r\n [rowSpan]=\"column.rowspan\"\r\n [style.height]=\"column.height\"\r\n [style.width]=\"column.width\"\r\n [style.background]=\"column.contentStyles.background ?? data.content.background\"\r\n [style.color]=\"column.contentStyles.color ?? data.content.color\"\r\n [ngClass]=\"column.contentStyles.styles ?? data.content.styles\">\r\n <div [innerHtml]=\"((row | getData : column.property : column.dataTransform : index).result) | safeHtml\"></div>\r\n </td>\r\n }\r\n </tr>\r\n }\r\n </tbody>\r\n\r\n </table>\r\n\r\n</div>\r\n\r\n", styles: ["smz-document-table .smz-document-table-tag table{page-break-inside:auto}smz-document-table .smz-document-table-tag div{page-break-inside:avoid}smz-document-table .smz-document-table-tag thead{display:table-header-group}smz-document-table .smz-document-table-tag tfoot{display:table-footer-group}\n"] }]
23349
23349
  }], ctorParameters: () => [], propDecorators: { data: [{
23350
23350
  type: Input
23351
23351
  }], config: [{
@@ -23473,11 +23473,11 @@ class SmzChartComponent {
23473
23473
  }
23474
23474
  }
23475
23475
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzChartComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
23476
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzChartComponent, isStandalone: false, selector: "smz-ui-chart", inputs: { type: "type", plugins: "plugins", width: "width", height: "height", responsive: "responsive", styleClass: "styleClass", data: "data", options: "options" }, outputs: { chartClick: "chartClick", chartHover: "chartHover" }, ngImport: i0, template: "<div [ngClass]=\"{ 'invisible fixed': type == null || type === 'empty' }\"\r\n [style.width]=\"responsive && !width ? null : width\"\r\n [style.height]=\"responsive && !height ? null : height\"\r\n class=\"{{styleClass}}\">\r\n <canvas [attr.width]=\"responsive && !width ? null : width\"\r\n [attr.height]=\"responsive && !height ? null : height\">\r\n </canvas>\r\n</div>\r\n\r\n@if (type === 'empty') {\r\n <div class=\"relative h-full\"\r\n [ngStyle]=\"{ height: responsive && !height ? 'auto' : height + 'px', width: responsive && !width ? 'auto' : width + 'px'}\"\r\n class=\"h-full\">\r\n @if (title != null) {\r\n <div class=\"text-center smz-chart-title\">{{title}}</div>\r\n }\r\n <div class=\"grid grid-nogutter flex-col gap-3 items-center justify-center h-full\">\r\n <i class=\"fa-solid fa-chart-bar text-4xl\"></i>\r\n <p>{{uiConfig.dialogs.charts.emptyMessage}}</p>\r\n </div>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23476
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzChartComponent, isStandalone: false, selector: "smz-ui-chart", inputs: { type: "type", plugins: "plugins", width: "width", height: "height", responsive: "responsive", styleClass: "styleClass", data: "data", options: "options" }, outputs: { chartClick: "chartClick", chartHover: "chartHover" }, ngImport: i0, template: "<div [ngClass]=\"{ 'invisible fixed': type == null || type === 'empty' }\"\r\n [style.width]=\"responsive && !width ? null : width\"\r\n [style.height]=\"responsive && !height ? null : height\"\r\n class=\"{{styleClass}}\">\r\n <canvas [attr.width]=\"responsive && !width ? null : width\"\r\n [attr.height]=\"responsive && !height ? null : height\">\r\n </canvas>\r\n</div>\r\n\r\n@if (type === 'empty') {\r\n <div class=\"relative h-full\"\r\n [ngStyle]=\"{ height: responsive && !height ? 'auto' : height + 'px', width: responsive && !width ? 'auto' : width + 'px'}\"\r\n class=\"h-full\">\r\n @if (title != null) {\r\n <div class=\"text-center smz-chart-title\">{{title}}</div>\r\n }\r\n <div class=\"flex flex-wrap flex-col items-center justify-center h-full gap-3\">\r\n <i class=\"fa-solid fa-chart-bar text-4xl\"></i>\r\n <p>{{uiConfig.dialogs.charts.emptyMessage}}</p>\r\n </div>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
23477
23477
  }
23478
23478
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzChartComponent, decorators: [{
23479
23479
  type: Component,
23480
- args: [{ selector: 'smz-ui-chart', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<div [ngClass]=\"{ 'invisible fixed': type == null || type === 'empty' }\"\r\n [style.width]=\"responsive && !width ? null : width\"\r\n [style.height]=\"responsive && !height ? null : height\"\r\n class=\"{{styleClass}}\">\r\n <canvas [attr.width]=\"responsive && !width ? null : width\"\r\n [attr.height]=\"responsive && !height ? null : height\">\r\n </canvas>\r\n</div>\r\n\r\n@if (type === 'empty') {\r\n <div class=\"relative h-full\"\r\n [ngStyle]=\"{ height: responsive && !height ? 'auto' : height + 'px', width: responsive && !width ? 'auto' : width + 'px'}\"\r\n class=\"h-full\">\r\n @if (title != null) {\r\n <div class=\"text-center smz-chart-title\">{{title}}</div>\r\n }\r\n <div class=\"grid grid-nogutter flex-col gap-3 items-center justify-center h-full\">\r\n <i class=\"fa-solid fa-chart-bar text-4xl\"></i>\r\n <p>{{uiConfig.dialogs.charts.emptyMessage}}</p>\r\n </div>\r\n </div>\r\n}" }]
23480
+ args: [{ selector: 'smz-ui-chart', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<div [ngClass]=\"{ 'invisible fixed': type == null || type === 'empty' }\"\r\n [style.width]=\"responsive && !width ? null : width\"\r\n [style.height]=\"responsive && !height ? null : height\"\r\n class=\"{{styleClass}}\">\r\n <canvas [attr.width]=\"responsive && !width ? null : width\"\r\n [attr.height]=\"responsive && !height ? null : height\">\r\n </canvas>\r\n</div>\r\n\r\n@if (type === 'empty') {\r\n <div class=\"relative h-full\"\r\n [ngStyle]=\"{ height: responsive && !height ? 'auto' : height + 'px', width: responsive && !width ? 'auto' : width + 'px'}\"\r\n class=\"h-full\">\r\n @if (title != null) {\r\n <div class=\"text-center smz-chart-title\">{{title}}</div>\r\n }\r\n <div class=\"flex flex-wrap flex-col items-center justify-center h-full gap-3\">\r\n <i class=\"fa-solid fa-chart-bar text-4xl\"></i>\r\n <p>{{uiConfig.dialogs.charts.emptyMessage}}</p>\r\n </div>\r\n </div>\r\n}" }]
23481
23481
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { type: [{
23482
23482
  type: Input
23483
23483
  }], plugins: [{
@@ -23551,11 +23551,11 @@ class SmzDocumentInjectableComponent {
23551
23551
  config;
23552
23552
  state;
23553
23553
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentInjectableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
23554
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzDocumentInjectableComponent, isStandalone: false, selector: "smz-document-injectable", inputs: { data: "data", config: "config", state: "state" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-stretch justify-start h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <ng-template [smzGenericInjectComponent]=\"data.content.component\" [context]=\"config\"></ng-template>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: GenericInjectComponentDirective, selector: "[smzGenericInjectComponent]", inputs: ["smzGenericInjectComponent", "context"] }] });
23554
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzDocumentInjectableComponent, isStandalone: false, selector: "smz-document-injectable", inputs: { data: "data", config: "config", state: "state" }, ngImport: i0, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-stretch justify-start h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <ng-template [smzGenericInjectComponent]=\"data.content.component\" [context]=\"config\"></ng-template>\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: GenericInjectComponentDirective, selector: "[smzGenericInjectComponent]", inputs: ["smzGenericInjectComponent", "context"] }] });
23555
23555
  }
23556
23556
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentInjectableComponent, decorators: [{
23557
23557
  type: Component,
23558
- args: [{ selector: 'smz-document-injectable', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"grid grid-nogutter items-stretch justify-start h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <ng-template [smzGenericInjectComponent]=\"data.content.component\" [context]=\"config\"></ng-template>\r\n\r\n</div>" }]
23558
+ args: [{ selector: 'smz-document-injectable', standalone: false, template: "<div\r\n [style.background]=\"data.container.background\"\r\n class=\"flex flex-wrap items-stretch justify-start h-full relative\"\r\n [ngClass]=\"data.container.styles\">\r\n\r\n <ng-template [smzGenericInjectComponent]=\"data.content.component\" [context]=\"config\"></ng-template>\r\n\r\n</div>" }]
23559
23559
  }], propDecorators: { data: [{
23560
23560
  type: Input
23561
23561
  }], config: [{
@@ -23787,11 +23787,11 @@ class SmzDocumentViewerComponent {
23787
23787
  this.documentService.setPaperElement(null);
23788
23788
  }
23789
23789
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentViewerComponent, deps: [{ token: i0.ElementRef }, { token: SmzDocumentsService }, { token: i1.Location }, { token: i0.ChangeDetectorRef }, { token: i1$3.Store }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
23790
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentViewerComponent, isStandalone: false, selector: "document-viewer", inputs: { state: "state" }, providers: [SmzDocumentsService], viewQueries: [{ propertyName: "paperElement", first: true, predicate: ["paper"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"grid grid-nogutter items-center justify-start flex-col gap-2\" [ngClass]=\"state.viewer.container.styleClass\">\r\n\r\n <div class=\"grid grid-nogutter items-start justify-start gap-2\">\r\n\r\n @if (state.viewer.zoom.isEnabled) {\r\n <button smzButton type=\"button\" label=\"ZOOM -\" (click)=\"documentService.lessZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"100%\" (click)=\"documentService.restoreZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"ZOOM +\" (click)=\"documentService.moreZoom()\" variant=\"outlined\"></button>\r\n }\r\n @if (state.viewer.open.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.open.label\" (click)=\"documentService.generate('open')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.print.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.print.label\" (click)=\"documentService.generate('print')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.download.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.download.label\" (click)=\"documentService.generate('download')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n </div>\r\n\r\n <div class=\"pager\" [ngClass]=\"state.viewer.paper.styleClass\"\r\n [style.transform]=\"'scale(' + documentService.zoom + ')'\"\r\n [style.width.pt]=\"state.viewer.paper.ptWidth\"\r\n [style.padding-left]=\"state.export.margin.left + 'pt !important'\"\r\n [style.padding-right]=\"state.export.margin.right + 'pt !important'\"\r\n [style.padding-top]=\"state.export.margin.top + 'pt !important'\"\r\n [style.padding-bottom]=\"state.export.margin.bottom + 'pt !important'\"\r\n >\r\n <div #paper [style.font-family]=\"state.globals.font.family\" [style.padding]=\"state.export.paddingCompensation\">\r\n <ng-content select=\"header\"></ng-content>\r\n <ng-content select=\"content\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".pager{transform-origin:top center;transition:transform .1s ease-in-out;margin-top:0;margin-left:auto;margin-right:auto}.footer-container{position:absolute;bottom:14.173px;right:22.6768px;font-size:\"0.8px\"}.sticky-header{position:absolute}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None });
23790
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDocumentViewerComponent, isStandalone: false, selector: "document-viewer", inputs: { state: "state" }, providers: [SmzDocumentsService], viewQueries: [{ propertyName: "paperElement", first: true, predicate: ["paper"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"flex flex-wrap items-center justify-start flex-col gap-2\" [ngClass]=\"state.viewer.container.styleClass\">\r\n\r\n <div class=\"flex flex-wrap items-start justify-start gap-2\">\r\n\r\n @if (state.viewer.zoom.isEnabled) {\r\n <button smzButton type=\"button\" label=\"ZOOM -\" (click)=\"documentService.lessZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"100%\" (click)=\"documentService.restoreZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"ZOOM +\" (click)=\"documentService.moreZoom()\" variant=\"outlined\"></button>\r\n }\r\n @if (state.viewer.open.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.open.label\" (click)=\"documentService.generate('open')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.print.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.print.label\" (click)=\"documentService.generate('print')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.download.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.download.label\" (click)=\"documentService.generate('download')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n </div>\r\n\r\n <div class=\"pager\" [ngClass]=\"state.viewer.paper.styleClass\"\r\n [style.transform]=\"'scale(' + documentService.zoom + ')'\"\r\n [style.width.pt]=\"state.viewer.paper.ptWidth\"\r\n [style.padding-left]=\"state.export.margin.left + 'pt !important'\"\r\n [style.padding-right]=\"state.export.margin.right + 'pt !important'\"\r\n [style.padding-top]=\"state.export.margin.top + 'pt !important'\"\r\n [style.padding-bottom]=\"state.export.margin.bottom + 'pt !important'\"\r\n >\r\n <div #paper [style.font-family]=\"state.globals.font.family\" [style.padding]=\"state.export.paddingCompensation\">\r\n <ng-content select=\"header\"></ng-content>\r\n <ng-content select=\"content\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".pager{transform-origin:top center;transition:transform .1s ease-in-out;margin-top:0;margin-left:auto;margin-right:auto}.footer-container{position:absolute;bottom:14.173px;right:22.6768px;font-size:\"0.8px\"}.sticky-header{position:absolute}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None });
23791
23791
  }
23792
23792
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDocumentViewerComponent, decorators: [{
23793
23793
  type: Component,
23794
- args: [{ selector: 'document-viewer', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, providers: [SmzDocumentsService], standalone: false, template: "<div class=\"grid grid-nogutter items-center justify-start flex-col gap-2\" [ngClass]=\"state.viewer.container.styleClass\">\r\n\r\n <div class=\"grid grid-nogutter items-start justify-start gap-2\">\r\n\r\n @if (state.viewer.zoom.isEnabled) {\r\n <button smzButton type=\"button\" label=\"ZOOM -\" (click)=\"documentService.lessZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"100%\" (click)=\"documentService.restoreZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"ZOOM +\" (click)=\"documentService.moreZoom()\" variant=\"outlined\"></button>\r\n }\r\n @if (state.viewer.open.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.open.label\" (click)=\"documentService.generate('open')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.print.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.print.label\" (click)=\"documentService.generate('print')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.download.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.download.label\" (click)=\"documentService.generate('download')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n </div>\r\n\r\n <div class=\"pager\" [ngClass]=\"state.viewer.paper.styleClass\"\r\n [style.transform]=\"'scale(' + documentService.zoom + ')'\"\r\n [style.width.pt]=\"state.viewer.paper.ptWidth\"\r\n [style.padding-left]=\"state.export.margin.left + 'pt !important'\"\r\n [style.padding-right]=\"state.export.margin.right + 'pt !important'\"\r\n [style.padding-top]=\"state.export.margin.top + 'pt !important'\"\r\n [style.padding-bottom]=\"state.export.margin.bottom + 'pt !important'\"\r\n >\r\n <div #paper [style.font-family]=\"state.globals.font.family\" [style.padding]=\"state.export.paddingCompensation\">\r\n <ng-content select=\"header\"></ng-content>\r\n <ng-content select=\"content\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".pager{transform-origin:top center;transition:transform .1s ease-in-out;margin-top:0;margin-left:auto;margin-right:auto}.footer-container{position:absolute;bottom:14.173px;right:22.6768px;font-size:\"0.8px\"}.sticky-header{position:absolute}\n"] }]
23794
+ args: [{ selector: 'document-viewer', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, providers: [SmzDocumentsService], standalone: false, template: "<div class=\"flex flex-wrap items-center justify-start flex-col gap-2\" [ngClass]=\"state.viewer.container.styleClass\">\r\n\r\n <div class=\"flex flex-wrap items-start justify-start gap-2\">\r\n\r\n @if (state.viewer.zoom.isEnabled) {\r\n <button smzButton type=\"button\" label=\"ZOOM -\" (click)=\"documentService.lessZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"100%\" (click)=\"documentService.restoreZoom()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" label=\"ZOOM +\" (click)=\"documentService.moreZoom()\" variant=\"outlined\"></button>\r\n }\r\n @if (state.viewer.open.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.open.label\" (click)=\"documentService.generate('open')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.print.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.print.label\" (click)=\"documentService.generate('print')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n @if (state.viewer.download.isEnabled) {\r\n <button smzButton type=\"button\" [label]=\"state.viewer.download.label\" (click)=\"documentService.generate('download')\" [disabled]=\"state.isDebug\" severity=\"success\"></button>\r\n }\r\n </div>\r\n\r\n <div class=\"pager\" [ngClass]=\"state.viewer.paper.styleClass\"\r\n [style.transform]=\"'scale(' + documentService.zoom + ')'\"\r\n [style.width.pt]=\"state.viewer.paper.ptWidth\"\r\n [style.padding-left]=\"state.export.margin.left + 'pt !important'\"\r\n [style.padding-right]=\"state.export.margin.right + 'pt !important'\"\r\n [style.padding-top]=\"state.export.margin.top + 'pt !important'\"\r\n [style.padding-bottom]=\"state.export.margin.bottom + 'pt !important'\"\r\n >\r\n <div #paper [style.font-family]=\"state.globals.font.family\" [style.padding]=\"state.export.paddingCompensation\">\r\n <ng-content select=\"header\"></ng-content>\r\n <ng-content select=\"content\"></ng-content>\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".pager{transform-origin:top center;transition:transform .1s ease-in-out;margin-top:0;margin-left:auto;margin-right:auto}.footer-container{position:absolute;bottom:14.173px;right:22.6768px;font-size:\"0.8px\"}.sticky-header{position:absolute}\n"] }]
23795
23795
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: SmzDocumentsService }, { type: i1.Location }, { type: i0.ChangeDetectorRef }, { type: i1$3.Store }, { type: i0.Renderer2 }], propDecorators: { paperElement: [{
23796
23796
  type: ViewChild,
23797
23797
  args: ['paper', { static: true }]
@@ -28748,11 +28748,11 @@ class GuideFooterComponent {
28748
28748
  this.refService.close();
28749
28749
  }
28750
28750
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: GuideFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28751
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: GuideFooterComponent, isStandalone: false, selector: "smz-guide-footer", ngImport: i0, template: "@if (dialogConfig.data?.overlayPanel; as overlay) {\r\n <ui-toolbar class=\"smz-guide-footer\">\r\n <div class=\"w-full grid grid-nogutter items-center justify-between gap-2\">\r\n @if (overlay.state.allowBackNavigation) {\r\n <button [disabled]=\"overlay.state.context.step <= 1\" smzButton type=\"button\" icon=\"fa-solid fa-arrow-left-long\" class=\"text-lg w-11 h-11\" (click)=\"previous()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.showSummaryCount) {\r\n <div class=\"grid grid-nogutter items-center justify-center gap-2\">\r\n @for (step of overlay.state.steps; track step; let index = $index) {\r\n <div\r\n class=\"rounded-full h-4 w-4 border-1 border-surface-border\"\r\n [ngClass]=\"{ 'bg-primary-color' : overlay.state.context.step === (index + 1), 'bg-surface-ground' : overlay.state.context.step !== (index + 1) }\">\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if (overlay.state.context.step === overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" class=\"text-lg w-11 h-11\" (click)=\"conclude()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.context.step < overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-right-long\" class=\"text-lg w-11 h-11\" (click)=\"next()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzToolbarComponent, selector: "ui-toolbar" }], encapsulation: i0.ViewEncapsulation.None });
28751
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: GuideFooterComponent, isStandalone: false, selector: "smz-guide-footer", ngImport: i0, template: "@if (dialogConfig.data?.overlayPanel; as overlay) {\r\n <ui-toolbar class=\"smz-guide-footer\">\r\n <div class=\"w-full flex flex-wrap items-center justify-between gap-2\">\r\n @if (overlay.state.allowBackNavigation) {\r\n <button [disabled]=\"overlay.state.context.step <= 1\" smzButton type=\"button\" icon=\"fa-solid fa-arrow-left-long\" class=\"text-lg w-11 h-11\" (click)=\"previous()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.showSummaryCount) {\r\n <div class=\"flex flex-wrap items-center justify-center gap-2\">\r\n @for (step of overlay.state.steps; track step; let index = $index) {\r\n <div\r\n class=\"rounded-full h-4 w-4 border-1 border-surface-border\"\r\n [ngClass]=\"{ 'bg-primary-color' : overlay.state.context.step === (index + 1), 'bg-surface-ground' : overlay.state.context.step !== (index + 1) }\">\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if (overlay.state.context.step === overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" class=\"text-lg w-11 h-11\" (click)=\"conclude()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.context.step < overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-right-long\" class=\"text-lg w-11 h-11\" (click)=\"next()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzToolbarComponent, selector: "ui-toolbar" }], encapsulation: i0.ViewEncapsulation.None });
28752
28752
  }
28753
28753
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: GuideFooterComponent, decorators: [{
28754
28754
  type: Component,
28755
- args: [{ selector: 'smz-guide-footer', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (dialogConfig.data?.overlayPanel; as overlay) {\r\n <ui-toolbar class=\"smz-guide-footer\">\r\n <div class=\"w-full grid grid-nogutter items-center justify-between gap-2\">\r\n @if (overlay.state.allowBackNavigation) {\r\n <button [disabled]=\"overlay.state.context.step <= 1\" smzButton type=\"button\" icon=\"fa-solid fa-arrow-left-long\" class=\"text-lg w-11 h-11\" (click)=\"previous()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.showSummaryCount) {\r\n <div class=\"grid grid-nogutter items-center justify-center gap-2\">\r\n @for (step of overlay.state.steps; track step; let index = $index) {\r\n <div\r\n class=\"rounded-full h-4 w-4 border-1 border-surface-border\"\r\n [ngClass]=\"{ 'bg-primary-color' : overlay.state.context.step === (index + 1), 'bg-surface-ground' : overlay.state.context.step !== (index + 1) }\">\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if (overlay.state.context.step === overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" class=\"text-lg w-11 h-11\" (click)=\"conclude()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.context.step < overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-right-long\" class=\"text-lg w-11 h-11\" (click)=\"next()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}" }]
28755
+ args: [{ selector: 'smz-guide-footer', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (dialogConfig.data?.overlayPanel; as overlay) {\r\n <ui-toolbar class=\"smz-guide-footer\">\r\n <div class=\"w-full flex flex-wrap items-center justify-between gap-2\">\r\n @if (overlay.state.allowBackNavigation) {\r\n <button [disabled]=\"overlay.state.context.step <= 1\" smzButton type=\"button\" icon=\"fa-solid fa-arrow-left-long\" class=\"text-lg w-11 h-11\" (click)=\"previous()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.showSummaryCount) {\r\n <div class=\"flex flex-wrap items-center justify-center gap-2\">\r\n @for (step of overlay.state.steps; track step; let index = $index) {\r\n <div\r\n class=\"rounded-full h-4 w-4 border-1 border-surface-border\"\r\n [ngClass]=\"{ 'bg-primary-color' : overlay.state.context.step === (index + 1), 'bg-surface-ground' : overlay.state.context.step !== (index + 1) }\">\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if (overlay.state.context.step === overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-check\" class=\"text-lg w-11 h-11\" (click)=\"conclude()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n @if (overlay.state.context.step < overlay.state.steps.length) {\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-arrow-right-long\" class=\"text-lg w-11 h-11\" (click)=\"next()\" [rounded]=\"true\" variant=\"text\">\r\n </button>\r\n }\r\n </div>\r\n </ui-toolbar>\r\n}" }]
28756
28756
  }] });
28757
28757
 
28758
28758
  // export const ngxsModuleForFeatureDialogsState = NgxsModule.forFeature([DialogsState]);
@@ -31998,11 +31998,11 @@ class UserClaimsComponent {
31998
31998
  this.claims = claims.filter(claim => this.user?.claims.findIndex(u => u.id === claim.id) !== -1 ? false : true);
31999
31999
  }
32000
32000
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: UserClaimsComponent, deps: [{ token: i1$3.Store }, { token: SmzDialogsService }], target: i0.ɵɵFactoryTarget.Component });
32001
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: UserClaimsComponent, isStandalone: false, selector: "app-user-claims", inputs: { username: "username" }, outputs: { desassociateClaim: "desassociateClaim" }, ngImport: i0, template: "<div class=\"ui-g form-group\">\r\n <div class=\"ui-g-12 ui-md-12\">\r\n <ui-pick-list [source]=\"claims\" [target]=\"targetClaims\" [responsive]=\"true\" sourceHeader=\"Claims dispon\u00EDveis\" targetHeader=\"Claims associados\" sourceFilterPlaceholder=\"Filtrar claims\" targetFilterPlaceholder=\"Filtrar claims\" filterBy=\"name\" [showSourceControls]=\"false\" [showTargetControls]=\"false\" [dragdrop]=\"true\" (movedToTarget)=\"addItemToTarget($event)\" (movedToSource)=\"addItemToSource($event)\" (movedAllToTarget)=\"addItemToTarget($event)\" (movedAllToSource)=\"addItemToSource($event)\">\r\n <ng-template let-item smzTemplate=\"item\">\r\n\r\n <!-- TARGET -->\r\n @if (item.access != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <div class=\"claim-access-type-indicator\">\r\n @if (item.access.id === 0) {\r\n <strong class=\"block-text\"><i class=\"fa-solid fa-lock\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n @if (item.access.id === 1) {\r\n <strong class=\"allow-text\"><i class=\"fa-solid fa-lock-open\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n </div>\r\n <div>{{ item.claim.name }}</div>\r\n </div>\r\n <div></div>\r\n } @else {\r\n {{ item.description }}\r\n }\r\n\r\n <!-- SOURCE -->\r\n\r\n </ng-template>\r\n </ui-pick-list>\r\n </div>\r\n</div>", styles: ["app-user-claims .nameInput{height:60px}app-user-claims .p-picklist .p-picklist-filter-container{padding-right:30px!important}app-user-claims .p-picklist .p-picklist-filter-container .p-picklist-filter-icon{right:10px!important;left:unset}app-user-claims .p-picklist .p-picklist-list{height:300px}app-user-claims .p-picklist.p-picklist-responsive .p-picklist-listwrapper.p-picklist-listwrapper-nocontrols{width:50%}app-user-claims .claim-access-type-indicator{float:right}app-user-claims .allow-text{color:#1a9c2a}app-user-claims .block-text{color:#9c1a1a}\n"], dependencies: [{ kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: i2.SmzPickListComponent, selector: "ui-pick-list", inputs: ["source", "target", "sourceHeader", "targetHeader", "sourceFilterPlaceholder", "targetFilterPlaceholder", "filterBy", "dragdrop", "responsive", "listStyle", "showSourceControls", "showTargetControls"], outputs: ["movedToTarget", "movedToSource", "movedAllToTarget", "movedAllToSource"] }], encapsulation: i0.ViewEncapsulation.None });
32001
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: UserClaimsComponent, isStandalone: false, selector: "app-user-claims", inputs: { username: "username" }, outputs: { desassociateClaim: "desassociateClaim" }, ngImport: i0, template: "<div class=\"ui-g form-group\">\r\n <div class=\"ui-g-12 ui-md-12\">\r\n <ui-pick-list [source]=\"claims\" [target]=\"targetClaims\" [responsive]=\"true\" sourceHeader=\"Claims dispon\u00EDveis\" targetHeader=\"Claims associados\" sourceFilterPlaceholder=\"Filtrar claims\" targetFilterPlaceholder=\"Filtrar claims\" filterBy=\"name\" [showSourceControls]=\"false\" [showTargetControls]=\"false\" [dragdrop]=\"true\" (movedToTarget)=\"addItemToTarget($event)\" (movedToSource)=\"addItemToSource($event)\" (movedAllToTarget)=\"addItemToTarget($event)\" (movedAllToSource)=\"addItemToSource($event)\">\r\n <ng-template let-item smzTemplate=\"item\">\r\n\r\n <!-- TARGET -->\r\n @if (item.access != null) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <div class=\"claim-access-type-indicator\">\r\n @if (item.access.id === 0) {\r\n <strong class=\"block-text\"><i class=\"fa-solid fa-lock\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n @if (item.access.id === 1) {\r\n <strong class=\"allow-text\"><i class=\"fa-solid fa-lock-open\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n </div>\r\n <div>{{ item.claim.name }}</div>\r\n </div>\r\n <div></div>\r\n } @else {\r\n {{ item.description }}\r\n }\r\n\r\n <!-- SOURCE -->\r\n\r\n </ng-template>\r\n </ui-pick-list>\r\n </div>\r\n</div>", styles: ["app-user-claims .nameInput{height:60px}app-user-claims .p-picklist .p-picklist-filter-container{padding-right:30px!important}app-user-claims .p-picklist .p-picklist-filter-container .p-picklist-filter-icon{right:10px!important;left:unset}app-user-claims .p-picklist .p-picklist-list{height:300px}app-user-claims .p-picklist.p-picklist-responsive .p-picklist-listwrapper.p-picklist-listwrapper-nocontrols{width:50%}app-user-claims .claim-access-type-indicator{float:right}app-user-claims .allow-text{color:#1a9c2a}app-user-claims .block-text{color:#9c1a1a}\n"], dependencies: [{ kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: i2.SmzPickListComponent, selector: "ui-pick-list", inputs: ["source", "target", "sourceHeader", "targetHeader", "sourceFilterPlaceholder", "targetFilterPlaceholder", "filterBy", "dragdrop", "responsive", "listStyle", "showSourceControls", "showTargetControls"], outputs: ["movedToTarget", "movedToSource", "movedAllToTarget", "movedAllToSource"] }], encapsulation: i0.ViewEncapsulation.None });
32002
32002
  }
32003
32003
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: UserClaimsComponent, decorators: [{
32004
32004
  type: Component,
32005
- args: [{ selector: 'app-user-claims', encapsulation: ViewEncapsulation.None, standalone: false, template: "<div class=\"ui-g form-group\">\r\n <div class=\"ui-g-12 ui-md-12\">\r\n <ui-pick-list [source]=\"claims\" [target]=\"targetClaims\" [responsive]=\"true\" sourceHeader=\"Claims dispon\u00EDveis\" targetHeader=\"Claims associados\" sourceFilterPlaceholder=\"Filtrar claims\" targetFilterPlaceholder=\"Filtrar claims\" filterBy=\"name\" [showSourceControls]=\"false\" [showTargetControls]=\"false\" [dragdrop]=\"true\" (movedToTarget)=\"addItemToTarget($event)\" (movedToSource)=\"addItemToSource($event)\" (movedAllToTarget)=\"addItemToTarget($event)\" (movedAllToSource)=\"addItemToSource($event)\">\r\n <ng-template let-item smzTemplate=\"item\">\r\n\r\n <!-- TARGET -->\r\n @if (item.access != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <div class=\"claim-access-type-indicator\">\r\n @if (item.access.id === 0) {\r\n <strong class=\"block-text\"><i class=\"fa-solid fa-lock\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n @if (item.access.id === 1) {\r\n <strong class=\"allow-text\"><i class=\"fa-solid fa-lock-open\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n </div>\r\n <div>{{ item.claim.name }}</div>\r\n </div>\r\n <div></div>\r\n } @else {\r\n {{ item.description }}\r\n }\r\n\r\n <!-- SOURCE -->\r\n\r\n </ng-template>\r\n </ui-pick-list>\r\n </div>\r\n</div>", styles: ["app-user-claims .nameInput{height:60px}app-user-claims .p-picklist .p-picklist-filter-container{padding-right:30px!important}app-user-claims .p-picklist .p-picklist-filter-container .p-picklist-filter-icon{right:10px!important;left:unset}app-user-claims .p-picklist .p-picklist-list{height:300px}app-user-claims .p-picklist.p-picklist-responsive .p-picklist-listwrapper.p-picklist-listwrapper-nocontrols{width:50%}app-user-claims .claim-access-type-indicator{float:right}app-user-claims .allow-text{color:#1a9c2a}app-user-claims .block-text{color:#9c1a1a}\n"] }]
32005
+ args: [{ selector: 'app-user-claims', encapsulation: ViewEncapsulation.None, standalone: false, template: "<div class=\"ui-g form-group\">\r\n <div class=\"ui-g-12 ui-md-12\">\r\n <ui-pick-list [source]=\"claims\" [target]=\"targetClaims\" [responsive]=\"true\" sourceHeader=\"Claims dispon\u00EDveis\" targetHeader=\"Claims associados\" sourceFilterPlaceholder=\"Filtrar claims\" targetFilterPlaceholder=\"Filtrar claims\" filterBy=\"name\" [showSourceControls]=\"false\" [showTargetControls]=\"false\" [dragdrop]=\"true\" (movedToTarget)=\"addItemToTarget($event)\" (movedToSource)=\"addItemToSource($event)\" (movedAllToTarget)=\"addItemToTarget($event)\" (movedAllToSource)=\"addItemToSource($event)\">\r\n <ng-template let-item smzTemplate=\"item\">\r\n\r\n <!-- TARGET -->\r\n @if (item.access != null) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <div class=\"claim-access-type-indicator\">\r\n @if (item.access.id === 0) {\r\n <strong class=\"block-text\"><i class=\"fa-solid fa-lock\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n @if (item.access.id === 1) {\r\n <strong class=\"allow-text\"><i class=\"fa-solid fa-lock-open\" [title]=\"item.access.name\"></i></strong>\r\n }\r\n </div>\r\n <div>{{ item.claim.name }}</div>\r\n </div>\r\n <div></div>\r\n } @else {\r\n {{ item.description }}\r\n }\r\n\r\n <!-- SOURCE -->\r\n\r\n </ng-template>\r\n </ui-pick-list>\r\n </div>\r\n</div>", styles: ["app-user-claims .nameInput{height:60px}app-user-claims .p-picklist .p-picklist-filter-container{padding-right:30px!important}app-user-claims .p-picklist .p-picklist-filter-container .p-picklist-filter-icon{right:10px!important;left:unset}app-user-claims .p-picklist .p-picklist-list{height:300px}app-user-claims .p-picklist.p-picklist-responsive .p-picklist-listwrapper.p-picklist-listwrapper-nocontrols{width:50%}app-user-claims .claim-access-type-indicator{float:right}app-user-claims .allow-text{color:#1a9c2a}app-user-claims .block-text{color:#9c1a1a}\n"] }]
32006
32006
  }], ctorParameters: () => [{ type: i1$3.Store }, { type: SmzDialogsService }], propDecorators: { username: [{
32007
32007
  type: Input
32008
32008
  }], desassociateClaim: [{
@@ -32225,11 +32225,11 @@ class UsersPageComponent {
32225
32225
  this.cdr.markForCheck();
32226
32226
  }
32227
32227
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: UsersPageComponent, deps: [{ token: i1$3.Store }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
32228
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: UsersPageComponent, isStandalone: false, selector: "smz-ui-users-page", ngImport: i0, template: "\r\n<ng-container *ngVar=\"(users$ | async) as users\">\r\n\r\n <smz-ui-table #smzdt [items]=\"users\" [state]=\"tableState\" [loading]=\"false\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @for (action of (uiConfig.rbkUtils.authorization.users.pageActions | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n\r\n @if (uiConfig.rbkUtils.authorization.users.removalBehavior === 'deactivation') {\r\n <ui-select-button appendTo=\"body\" [options]=\"viewOptions\" [(ngModel)]=\"selectedView\" (changed)=\"handleViewOptionChange($event.value)\" optionLabel=\"label\" optionValue=\"value\">\r\n </ui-select-button>\r\n }\r\n\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('displayName') {\r\n <div class=\"grid grid-nogutter items-center gap-3 justify-start\">\r\n <!-- CONTROLE DE ACESSO N\u00C3O ENCONTROU O IDENTIFICADOR DO USU\u00C1RIO -->\r\n @if (item.avatar == null) {\r\n <img\r\n [src]=\"uiConfig.rbkUtils.authorization.users.avatarPlaceholderPath\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <!-- USU\u00C1RIO COM AVATAR INFORMADO PELO CONTROLE DE ACESSO -->\r\n @if (item.avatar != null) {\r\n <img\r\n [src]=\"item.avatar\"\r\n (error)=\"handleMissingImage($event, item.name, item.avatar)\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <span>{{ item.displayName }}</span>\r\n </div>\r\n }\r\n @case ('role.name') {\r\n {{ item.role?.name }}\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "directive", type: SmzMenuItemActionsDirective, selector: "[smzMenuItemAction]", inputs: ["item", "data"], outputs: ["collapse"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SmzFlattenMenuPipe, name: "smzFlattenMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
32228
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: UsersPageComponent, isStandalone: false, selector: "smz-ui-users-page", ngImport: i0, template: "\r\n<ng-container *ngVar=\"(users$ | async) as users\">\r\n\r\n <smz-ui-table #smzdt [items]=\"users\" [state]=\"tableState\" [loading]=\"false\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @for (action of (uiConfig.rbkUtils.authorization.users.pageActions | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n\r\n @if (uiConfig.rbkUtils.authorization.users.removalBehavior === 'deactivation') {\r\n <ui-select-button appendTo=\"body\" [options]=\"viewOptions\" [(ngModel)]=\"selectedView\" (changed)=\"handleViewOptionChange($event.value)\" optionLabel=\"label\" optionValue=\"value\">\r\n </ui-select-button>\r\n }\r\n\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('displayName') {\r\n <div class=\"flex flex-wrap items-center justify-start gap-3\">\r\n <!-- CONTROLE DE ACESSO N\u00C3O ENCONTROU O IDENTIFICADOR DO USU\u00C1RIO -->\r\n @if (item.avatar == null) {\r\n <img\r\n [src]=\"uiConfig.rbkUtils.authorization.users.avatarPlaceholderPath\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <!-- USU\u00C1RIO COM AVATAR INFORMADO PELO CONTROLE DE ACESSO -->\r\n @if (item.avatar != null) {\r\n <img\r\n [src]=\"item.avatar\"\r\n (error)=\"handleMissingImage($event, item.name, item.avatar)\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <span>{{ item.displayName }}</span>\r\n </div>\r\n }\r\n @case ('role.name') {\r\n {{ item.role?.name }}\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>", dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "directive", type: SmzMenuItemActionsDirective, selector: "[smzMenuItemAction]", inputs: ["item", "data"], outputs: ["collapse"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SmzFlattenMenuPipe, name: "smzFlattenMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
32229
32229
  }
32230
32230
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: UsersPageComponent, decorators: [{
32231
32231
  type: Component,
32232
- args: [{ selector: 'smz-ui-users-page', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n<ng-container *ngVar=\"(users$ | async) as users\">\r\n\r\n <smz-ui-table #smzdt [items]=\"users\" [state]=\"tableState\" [loading]=\"false\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @for (action of (uiConfig.rbkUtils.authorization.users.pageActions | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n\r\n @if (uiConfig.rbkUtils.authorization.users.removalBehavior === 'deactivation') {\r\n <ui-select-button appendTo=\"body\" [options]=\"viewOptions\" [(ngModel)]=\"selectedView\" (changed)=\"handleViewOptionChange($event.value)\" optionLabel=\"label\" optionValue=\"value\">\r\n </ui-select-button>\r\n }\r\n\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('displayName') {\r\n <div class=\"grid grid-nogutter items-center gap-3 justify-start\">\r\n <!-- CONTROLE DE ACESSO N\u00C3O ENCONTROU O IDENTIFICADOR DO USU\u00C1RIO -->\r\n @if (item.avatar == null) {\r\n <img\r\n [src]=\"uiConfig.rbkUtils.authorization.users.avatarPlaceholderPath\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <!-- USU\u00C1RIO COM AVATAR INFORMADO PELO CONTROLE DE ACESSO -->\r\n @if (item.avatar != null) {\r\n <img\r\n [src]=\"item.avatar\"\r\n (error)=\"handleMissingImage($event, item.name, item.avatar)\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <span>{{ item.displayName }}</span>\r\n </div>\r\n }\r\n @case ('role.name') {\r\n {{ item.role?.name }}\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>" }]
32232
+ args: [{ selector: 'smz-ui-users-page', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n<ng-container *ngVar=\"(users$ | async) as users\">\r\n\r\n <smz-ui-table #smzdt [items]=\"users\" [state]=\"tableState\" [loading]=\"false\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @for (action of (uiConfig.rbkUtils.authorization.users.pageActions | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n\r\n @if (uiConfig.rbkUtils.authorization.users.removalBehavior === 'deactivation') {\r\n <ui-select-button appendTo=\"body\" [options]=\"viewOptions\" [(ngModel)]=\"selectedView\" (changed)=\"handleViewOptionChange($event.value)\" optionLabel=\"label\" optionValue=\"value\">\r\n </ui-select-button>\r\n }\r\n\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('displayName') {\r\n <div class=\"flex flex-wrap items-center justify-start gap-3\">\r\n <!-- CONTROLE DE ACESSO N\u00C3O ENCONTROU O IDENTIFICADOR DO USU\u00C1RIO -->\r\n @if (item.avatar == null) {\r\n <img\r\n [src]=\"uiConfig.rbkUtils.authorization.users.avatarPlaceholderPath\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <!-- USU\u00C1RIO COM AVATAR INFORMADO PELO CONTROLE DE ACESSO -->\r\n @if (item.avatar != null) {\r\n <img\r\n [src]=\"item.avatar\"\r\n (error)=\"handleMissingImage($event, item.name, item.avatar)\"\r\n class=\"w-14 align-middle\"\r\n />\r\n }\r\n <span>{{ item.displayName }}</span>\r\n </div>\r\n }\r\n @case ('role.name') {\r\n {{ item.role?.name }}\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>" }]
32233
32233
  }], ctorParameters: () => [{ type: i1$3.Store }, { type: i0.ChangeDetectorRef }] });
32234
32234
 
32235
32235
  const routes$7 = [
@@ -32706,14 +32706,14 @@ class RolesPageComponent {
32706
32706
  this.dialogs.open(CreateRoleDialog());
32707
32707
  }
32708
32708
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: RolesPageComponent, deps: [{ token: i1$3.Store }, { token: SmzDialogsService }], target: i0.ɵɵFactoryTarget.Component });
32709
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: RolesPageComponent, isStandalone: false, selector: "app-roles-page", ngImport: i0, template: "<smz-ui-table [items]=\"roles$ | async\" [state]=\"tableState\">\r\n\r\n <ng-template smzTemplate=\"caption\">\r\n <button smzButton type=\"button\" class=\"mx-1\" label=\"CRIAR\" (click)=\"showCreationDialog()\" [disabled]=\"!(canCreateClaims | rbkCanAccessAny)\" severity=\"primary\"></button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('claims') {\r\n <div class=\"grid grid-nogutter items-start justify-start flex-col gap-1\">\r\n <ng-container *ngVar=\"(item.claims | smzInitial : 3) as limitedClaims\">\r\n <!-- <div [innerHTML]=\"limitedClaims | prettyjson\"></div> -->\r\n <ul class=\"list-disc\">\r\n @for (claim of limitedClaims; track claim) {\r\n <li class=\"\">{{ $any(claim).name }}</li>\r\n }\r\n @if (item.claims.length > 3) {\r\n <li>(...)</li>\r\n }\r\n </ul>\r\n @if (item.claims.length > 3) {\r\n <button\r\n type=\"button\"\r\n (click)=\"onShowRoleClaimsDialog(item)\"\r\n class=\"block rounded-md bg-amber-400 px-2.5 py-1.5 text-center text-sm font-semibold text-black shadow-sm hover:bg-amber-300 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amber-500\">\r\n <i class=\"fa-solid fa-circle-info mr-2\"></i>Ver mais\r\n </button>\r\n }\r\n </ng-container>\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n</smz-ui-table>\r\n", dependencies: [{ kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SmzInitialPipe, name: "smzInitial" }, { kind: "pipe", type: RbkCanAccessAnyPipe, name: "rbkCanAccessAny" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
32709
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: RolesPageComponent, isStandalone: false, selector: "app-roles-page", ngImport: i0, template: "<smz-ui-table [items]=\"roles$ | async\" [state]=\"tableState\">\r\n\r\n <ng-template smzTemplate=\"caption\">\r\n <button smzButton type=\"button\" class=\"mx-1\" label=\"CRIAR\" (click)=\"showCreationDialog()\" [disabled]=\"!(canCreateClaims | rbkCanAccessAny)\" severity=\"primary\"></button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('claims') {\r\n <div class=\"flex flex-wrap items-start justify-start flex-col gap-1\">\r\n <ng-container *ngVar=\"(item.claims | smzInitial : 3) as limitedClaims\">\r\n <!-- <div [innerHTML]=\"limitedClaims | prettyjson\"></div> -->\r\n <ul class=\"list-disc\">\r\n @for (claim of limitedClaims; track claim) {\r\n <li class=\"\">{{ $any(claim).name }}</li>\r\n }\r\n @if (item.claims.length > 3) {\r\n <li>(...)</li>\r\n }\r\n </ul>\r\n @if (item.claims.length > 3) {\r\n <button\r\n type=\"button\"\r\n (click)=\"onShowRoleClaimsDialog(item)\"\r\n class=\"block rounded-md bg-amber-400 px-2.5 py-1.5 text-center text-sm font-semibold text-black shadow-sm hover:bg-amber-300 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amber-500\">\r\n <i class=\"fa-solid fa-circle-info mr-2\"></i>Ver mais\r\n </button>\r\n }\r\n </ng-container>\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n</smz-ui-table>\r\n", dependencies: [{ kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SmzInitialPipe, name: "smzInitial" }, { kind: "pipe", type: RbkCanAccessAnyPipe, name: "rbkCanAccessAny" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
32710
32710
  }
32711
32711
  __decorate([
32712
32712
  Confirmable('Tem certeza de que deseja excluir esse perfil ?', 'Atenção', true)
32713
32713
  ], RolesPageComponent.prototype, "showDeleteConfirmation", null);
32714
32714
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: RolesPageComponent, decorators: [{
32715
32715
  type: Component,
32716
- args: [{ selector: 'app-roles-page', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<smz-ui-table [items]=\"roles$ | async\" [state]=\"tableState\">\r\n\r\n <ng-template smzTemplate=\"caption\">\r\n <button smzButton type=\"button\" class=\"mx-1\" label=\"CRIAR\" (click)=\"showCreationDialog()\" [disabled]=\"!(canCreateClaims | rbkCanAccessAny)\" severity=\"primary\"></button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('claims') {\r\n <div class=\"grid grid-nogutter items-start justify-start flex-col gap-1\">\r\n <ng-container *ngVar=\"(item.claims | smzInitial : 3) as limitedClaims\">\r\n <!-- <div [innerHTML]=\"limitedClaims | prettyjson\"></div> -->\r\n <ul class=\"list-disc\">\r\n @for (claim of limitedClaims; track claim) {\r\n <li class=\"\">{{ $any(claim).name }}</li>\r\n }\r\n @if (item.claims.length > 3) {\r\n <li>(...)</li>\r\n }\r\n </ul>\r\n @if (item.claims.length > 3) {\r\n <button\r\n type=\"button\"\r\n (click)=\"onShowRoleClaimsDialog(item)\"\r\n class=\"block rounded-md bg-amber-400 px-2.5 py-1.5 text-center text-sm font-semibold text-black shadow-sm hover:bg-amber-300 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amber-500\">\r\n <i class=\"fa-solid fa-circle-info mr-2\"></i>Ver mais\r\n </button>\r\n }\r\n </ng-container>\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n</smz-ui-table>\r\n" }]
32716
+ args: [{ selector: 'app-roles-page', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<smz-ui-table [items]=\"roles$ | async\" [state]=\"tableState\">\r\n\r\n <ng-template smzTemplate=\"caption\">\r\n <button smzButton type=\"button\" class=\"mx-1\" label=\"CRIAR\" (click)=\"showCreationDialog()\" [disabled]=\"!(canCreateClaims | rbkCanAccessAny)\" severity=\"primary\"></button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('claims') {\r\n <div class=\"flex flex-wrap items-start justify-start flex-col gap-1\">\r\n <ng-container *ngVar=\"(item.claims | smzInitial : 3) as limitedClaims\">\r\n <!-- <div [innerHTML]=\"limitedClaims | prettyjson\"></div> -->\r\n <ul class=\"list-disc\">\r\n @for (claim of limitedClaims; track claim) {\r\n <li class=\"\">{{ $any(claim).name }}</li>\r\n }\r\n @if (item.claims.length > 3) {\r\n <li>(...)</li>\r\n }\r\n </ul>\r\n @if (item.claims.length > 3) {\r\n <button\r\n type=\"button\"\r\n (click)=\"onShowRoleClaimsDialog(item)\"\r\n class=\"block rounded-md bg-amber-400 px-2.5 py-1.5 text-center text-sm font-semibold text-black shadow-sm hover:bg-amber-300 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amber-500\">\r\n <i class=\"fa-solid fa-circle-info mr-2\"></i>Ver mais\r\n </button>\r\n }\r\n </ng-container>\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n</smz-ui-table>\r\n" }]
32717
32717
  }], ctorParameters: () => [{ type: i1$3.Store }, { type: SmzDialogsService }], propDecorators: { showDeleteConfirmation: [] } });
32718
32718
 
32719
32719
  const data$4 = {
@@ -34133,11 +34133,11 @@ class SmzLoginComponent {
34133
34133
  }
34134
34134
  }
34135
34135
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzLoginComponent, deps: [{ token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
34136
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzLoginComponent, isStandalone: false, selector: "smz-ui-login", inputs: { state: "state" }, host: { properties: { "class": "this.colorClass" } }, queries: [{ propertyName: "templates", predicate: i0.forwardRef(() => SmzTemplateDirective) }], ngImport: i0, template: "<div [ngClass]=\"state.styleClass.card\" class=\"flex overflow-y-auto flex-col flex-nowrap items-stretch justify-center gap-3 w-full md:max-w-md h-full mx-auto shadow-6\">\r\n\r\n @if (state.logo.customPath != null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"state.logo.customPath\" />\r\n }\r\n @if (state.logo.customPath == null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"(appLogo$ | async)[state.logo.type]\" />\r\n }\r\n\r\n @if (state.isFormVisible) {\r\n <div class=\"w-full grid grid-nogutter flex-col items-stretch justify-center gap-4 p-6\">\r\n @if (state.message) {\r\n <div class=\"ml-auto mr-auto\" [innerHtml]=\"state.message | safeHtml\"></div>\r\n }\r\n <smz-form-group #formComponent (submit)=\"login($any(formComponent.getData()))\" [config]=\"state.form\"></smz-form-group>\r\n <button smzButton [disabled]=\"!formComponent.isValid\" type=\"button\" [label]=\"state.loginButtonLabel\" (click)=\"login($any(formComponent.getData()))\"></button>\r\n @for (action of (state.customButtons | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n @if (state.extraInfo) {\r\n <div class=\"text-sm ml-auto mr-auto\" [innerHtml]=\"state.extraInfo | safeHtml\"></div>\r\n }\r\n </div>\r\n }\r\n\r\n @if (extraTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"extraTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: FormGroupComponent, selector: "smz-form-group", inputs: ["config"], outputs: ["statusChanges", "initialStateChanged", "previousStateChanged", "submit"] }, { kind: "directive", type: SmzMenuItemActionsDirective, selector: "[smzMenuItemAction]", inputs: ["item", "data"], outputs: ["collapse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzFlattenMenuPipe, name: "smzFlattenMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34136
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzLoginComponent, isStandalone: false, selector: "smz-ui-login", inputs: { state: "state" }, host: { properties: { "class": "this.colorClass" } }, queries: [{ propertyName: "templates", predicate: i0.forwardRef(() => SmzTemplateDirective) }], ngImport: i0, template: "<div [ngClass]=\"state.styleClass.card\" class=\"flex overflow-y-auto flex-col flex-nowrap items-stretch justify-center gap-3 w-full md:max-w-md h-full mx-auto shadow-6\">\r\n\r\n @if (state.logo.customPath != null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"state.logo.customPath\" />\r\n }\r\n @if (state.logo.customPath == null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"(appLogo$ | async)[state.logo.type]\" />\r\n }\r\n\r\n @if (state.isFormVisible) {\r\n <div class=\"w-full flex flex-wrap flex-col items-stretch justify-center p-6 gap-4\">\r\n @if (state.message) {\r\n <div class=\"ml-auto mr-auto\" [innerHtml]=\"state.message | safeHtml\"></div>\r\n }\r\n <smz-form-group #formComponent (submit)=\"login($any(formComponent.getData()))\" [config]=\"state.form\"></smz-form-group>\r\n <button smzButton [disabled]=\"!formComponent.isValid\" type=\"button\" [label]=\"state.loginButtonLabel\" (click)=\"login($any(formComponent.getData()))\"></button>\r\n @for (action of (state.customButtons | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n @if (state.extraInfo) {\r\n <div class=\"text-sm ml-auto mr-auto\" [innerHtml]=\"state.extraInfo | safeHtml\"></div>\r\n }\r\n </div>\r\n }\r\n\r\n @if (extraTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"extraTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: FormGroupComponent, selector: "smz-form-group", inputs: ["config"], outputs: ["statusChanges", "initialStateChanged", "previousStateChanged", "submit"] }, { kind: "directive", type: SmzMenuItemActionsDirective, selector: "[smzMenuItemAction]", inputs: ["item", "data"], outputs: ["collapse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzFlattenMenuPipe, name: "smzFlattenMenu" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34137
34137
  }
34138
34138
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzLoginComponent, decorators: [{
34139
34139
  type: Component,
34140
- args: [{ selector: 'smz-ui-login', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div [ngClass]=\"state.styleClass.card\" class=\"flex overflow-y-auto flex-col flex-nowrap items-stretch justify-center gap-3 w-full md:max-w-md h-full mx-auto shadow-6\">\r\n\r\n @if (state.logo.customPath != null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"state.logo.customPath\" />\r\n }\r\n @if (state.logo.customPath == null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"(appLogo$ | async)[state.logo.type]\" />\r\n }\r\n\r\n @if (state.isFormVisible) {\r\n <div class=\"w-full grid grid-nogutter flex-col items-stretch justify-center gap-4 p-6\">\r\n @if (state.message) {\r\n <div class=\"ml-auto mr-auto\" [innerHtml]=\"state.message | safeHtml\"></div>\r\n }\r\n <smz-form-group #formComponent (submit)=\"login($any(formComponent.getData()))\" [config]=\"state.form\"></smz-form-group>\r\n <button smzButton [disabled]=\"!formComponent.isValid\" type=\"button\" [label]=\"state.loginButtonLabel\" (click)=\"login($any(formComponent.getData()))\"></button>\r\n @for (action of (state.customButtons | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n @if (state.extraInfo) {\r\n <div class=\"text-sm ml-auto mr-auto\" [innerHtml]=\"state.extraInfo | safeHtml\"></div>\r\n }\r\n </div>\r\n }\r\n\r\n @if (extraTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"extraTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n\r\n</div>" }]
34140
+ args: [{ selector: 'smz-ui-login', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div [ngClass]=\"state.styleClass.card\" class=\"flex overflow-y-auto flex-col flex-nowrap items-stretch justify-center gap-3 w-full md:max-w-md h-full mx-auto shadow-6\">\r\n\r\n @if (state.logo.customPath != null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"state.logo.customPath\" />\r\n }\r\n @if (state.logo.customPath == null) {\r\n <img [ngClass]=\"state.logo.styleClass\" class=\"object-fill ml-auto mr-auto\" [src]=\"(appLogo$ | async)[state.logo.type]\" />\r\n }\r\n\r\n @if (state.isFormVisible) {\r\n <div class=\"w-full flex flex-wrap flex-col items-stretch justify-center p-6 gap-4\">\r\n @if (state.message) {\r\n <div class=\"ml-auto mr-auto\" [innerHtml]=\"state.message | safeHtml\"></div>\r\n }\r\n <smz-form-group #formComponent (submit)=\"login($any(formComponent.getData()))\" [config]=\"state.form\"></smz-form-group>\r\n <button smzButton [disabled]=\"!formComponent.isValid\" type=\"button\" [label]=\"state.loginButtonLabel\" (click)=\"login($any(formComponent.getData()))\"></button>\r\n @for (action of (state.customButtons | smzFlattenMenu : null); track action) {\r\n @if (action.visible) {\r\n <button smzButton type=\"button\" smzMenuItemAction [item]=\"action\" [label]=\"action.label\" [icon]=\"action.icon\" [styleClass]=\"action.styleClass\" [disabled]=\"action.disabled\"></button>\r\n }\r\n }\r\n @if (state.extraInfo) {\r\n <div class=\"text-sm ml-auto mr-auto\" [innerHtml]=\"state.extraInfo | safeHtml\"></div>\r\n }\r\n </div>\r\n }\r\n\r\n @if (extraTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"extraTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n\r\n</div>" }]
34141
34141
  }], ctorParameters: () => [{ type: i1$3.Store }], propDecorators: { templates: [{
34142
34142
  type: ContentChildren,
34143
34143
  args: [forwardRef(() => SmzTemplateDirective)]
@@ -35659,7 +35659,7 @@ class FaqsContentComponent {
35659
35659
  this.manager.delete(data.id);
35660
35660
  }
35661
35661
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: FaqsContentComponent, deps: [{ token: FaqsManagerService }, { token: i0.ChangeDetectorRef }, { token: SmzDialogsService }], target: i0.ɵɵFactoryTarget.Component });
35662
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: FaqsContentComponent, isStandalone: false, selector: "smz-faqs-content", inputs: { items: "items" }, ngImport: i0, template: "<div class=\"grid\">\r\n\r\n <div class=\"col-12\">\r\n <h3>{{ manager.config.placeholders.searchTitle }}</h3>\r\n\r\n <ui-input-group>\r\n <ui-input-group-addon>\r\n <i class=\"fa-solid fa-magnifying-glass\"></i>\r\n </ui-input-group-addon>\r\n\r\n <input\r\n type=\"text\"\r\n smzInputText\r\n [(ngModel)]=\"keywords\"\r\n [placeholder]=\"manager.config.placeholders.searchPlaceholder\"\r\n />\r\n\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" [disabled]=\"keywords === ''\" (click)=\"keywords = ''\" styleClass=\"p-button-warn\"></button>\r\n </ui-input-group>\r\n </div>\r\n\r\n <div class=\"col-12\">\r\n @if ((items | searchFaqs : keywords); as filtered) {\r\n @if (filtered.length > 0) {\r\n <h3>{{ manager.config.placeholders.contentTitle }}</h3>\r\n <ui-accordion [multiple]=\"true\">\r\n @for (item of filtered; track item.id) {\r\n <ui-accordion-panel [value]=\"item.id\">\r\n <ui-accordion-header>{{ item.question }}</ui-accordion-header>\r\n\r\n <ui-accordion-content>\r\n @if (manager.config.creationClaim | rbkCanAccess) {\r\n <div class=\"faqs__actions\">\r\n <a class=\"clickable hvr-icon-push mr-2\" (click)=\"update(item)\"><i class=\"far fa-edit hvr-icon\"></i></a>\r\n <a class=\"clickable hvr-icon-push\" (click)=\"delete(item)\"><i class=\"far fa-trash-alt hvr-icon\"></i></a>\r\n </div>\r\n }\r\n\r\n <div class=\"faqs__answer\" [innerHTML]=\"(item.answer | highlight : keywords) | safeHtml\"></div>\r\n </ui-accordion-content>\r\n </ui-accordion-panel>\r\n }\r\n </ui-accordion>\r\n } @else {\r\n <smz-icon-message\r\n [message]=\"manager.config.placeholders.emptyMessage\"\r\n [comment]=\"(manager.config.creationClaim | rbkCanAccess) ?\r\n manager.config.placeholders.creationMessage :\r\n (keywords === '') ?\r\n manager.config.placeholders.supportMessage :\r\n manager.config.placeholders.noSearchResultsMessage\"\r\n >\r\n </smz-icon-message>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"col-12\">\r\n @if ((manager.config.creationClaim | rbkCanAccess) && formConfig != null) {\r\n <h3>{{ manager.config.placeholders.creationTitle }}</h3>\r\n <smz-form-group #creationComponent [config]=\"formConfig\"></smz-form-group>\r\n <button smzButton type=\"button\" label=\"ENVIAR\" [disabled]=\"!creationComponent.isValid\" (click)=\"create(creationComponent)\" styleClass=\"p-button-ghost\"></button>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".faqs__answer{white-space:pre-wrap}.faqs__actions{width:100%;text-align:right;padding:0 0 10px}.p-input-icon-left,.p-input-icon-right{position:relative}.ui-float-icon{position:absolute;top:50%;margin-top:-.5rem;left:.5rem;color:#6c757d}.p-input-icon-left>.ui-inputtext{padding-left:2rem;border-left-width:1px}\n"], dependencies: [{ kind: "component", type: SmzIconMessageComponent, selector: "smz-icon-message", inputs: ["icon", "message", "comment"] }, { kind: "component", type: FormGroupComponent, selector: "smz-form-group", inputs: ["config"], outputs: ["statusChanges", "initialStateChanged", "previousStateChanged", "submit"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzAccordionComponent, selector: "ui-accordion", inputs: ["value", "multiple", "transitionOptions"], outputs: ["valueChange", "opened", "closed"] }, { kind: "component", type: i2.SmzAccordionPanelComponent, selector: "ui-accordion-panel", inputs: ["value"] }, { kind: "component", type: i2.SmzAccordionHeaderComponent, selector: "ui-accordion-header" }, { kind: "component", type: i2.SmzAccordionContentComponent, selector: "ui-accordion-content" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzInputGroupComponent, selector: "ui-input-group" }, { kind: "component", type: i2.SmzInputGroupAddonComponent, selector: "ui-input-group-addon" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: RbkCanAccessPipe, name: "rbkCanAccess" }, { kind: "pipe", type: SearchFaqsPipe, name: "searchFaqs" }, { kind: "pipe", type: HighlightSearch, name: "highlight" }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] });
35662
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: FaqsContentComponent, isStandalone: false, selector: "smz-faqs-content", inputs: { items: "items" }, ngImport: i0, template: "<div class=\"grid grid-cols-12 gap-4 pb-2\">\r\n\r\n <div class=\"col-span-12 min-w-0\">\r\n <h3>{{ manager.config.placeholders.searchTitle }}</h3>\r\n\r\n <ui-input-group>\r\n <ui-input-group-addon>\r\n <i class=\"fa-solid fa-magnifying-glass\"></i>\r\n </ui-input-group-addon>\r\n\r\n <input\r\n type=\"text\"\r\n smzInputText\r\n [(ngModel)]=\"keywords\"\r\n [placeholder]=\"manager.config.placeholders.searchPlaceholder\"\r\n />\r\n\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" [disabled]=\"keywords === ''\" (click)=\"keywords = ''\" styleClass=\"p-button-warn\"></button>\r\n </ui-input-group>\r\n </div>\r\n\r\n <div class=\"col-span-12 min-w-0\">\r\n @if ((items | searchFaqs : keywords); as filtered) {\r\n @if (filtered.length > 0) {\r\n <h3>{{ manager.config.placeholders.contentTitle }}</h3>\r\n <ui-accordion [multiple]=\"true\">\r\n @for (item of filtered; track item.id) {\r\n <ui-accordion-panel [value]=\"item.id\">\r\n <ui-accordion-header>{{ item.question }}</ui-accordion-header>\r\n\r\n <ui-accordion-content>\r\n @if (manager.config.creationClaim | rbkCanAccess) {\r\n <div class=\"faqs__actions\">\r\n <a class=\"clickable hvr-icon-push mr-2\" (click)=\"update(item)\"><i class=\"far fa-edit hvr-icon\"></i></a>\r\n <a class=\"clickable hvr-icon-push\" (click)=\"delete(item)\"><i class=\"far fa-trash-alt hvr-icon\"></i></a>\r\n </div>\r\n }\r\n\r\n <div class=\"faqs__answer\" [innerHTML]=\"(item.answer | highlight : keywords) | safeHtml\"></div>\r\n </ui-accordion-content>\r\n </ui-accordion-panel>\r\n }\r\n </ui-accordion>\r\n } @else {\r\n <smz-icon-message\r\n [message]=\"manager.config.placeholders.emptyMessage\"\r\n [comment]=\"(manager.config.creationClaim | rbkCanAccess) ?\r\n manager.config.placeholders.creationMessage :\r\n (keywords === '') ?\r\n manager.config.placeholders.supportMessage :\r\n manager.config.placeholders.noSearchResultsMessage\"\r\n >\r\n </smz-icon-message>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"col-span-12 min-w-0\">\r\n @if ((manager.config.creationClaim | rbkCanAccess) && formConfig != null) {\r\n <h3>{{ manager.config.placeholders.creationTitle }}</h3>\r\n <smz-form-group #creationComponent [config]=\"formConfig\"></smz-form-group>\r\n <button smzButton type=\"button\" label=\"ENVIAR\" [disabled]=\"!creationComponent.isValid\" (click)=\"create(creationComponent)\" styleClass=\"p-button-ghost\"></button>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".faqs__answer{white-space:pre-wrap}.faqs__actions{width:100%;text-align:right;padding:0 0 10px}.p-input-icon-left,.p-input-icon-right{position:relative}.ui-float-icon{position:absolute;top:50%;margin-top:-.5rem;left:.5rem;color:#6c757d}.p-input-icon-left>.ui-inputtext{padding-left:2rem;border-left-width:1px}\n"], dependencies: [{ kind: "component", type: SmzIconMessageComponent, selector: "smz-icon-message", inputs: ["icon", "message", "comment"] }, { kind: "component", type: FormGroupComponent, selector: "smz-form-group", inputs: ["config"], outputs: ["statusChanges", "initialStateChanged", "previousStateChanged", "submit"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzAccordionComponent, selector: "ui-accordion", inputs: ["value", "multiple", "transitionOptions"], outputs: ["valueChange", "opened", "closed"] }, { kind: "component", type: i2.SmzAccordionPanelComponent, selector: "ui-accordion-panel", inputs: ["value"] }, { kind: "component", type: i2.SmzAccordionHeaderComponent, selector: "ui-accordion-header" }, { kind: "component", type: i2.SmzAccordionContentComponent, selector: "ui-accordion-content" }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzInputGroupComponent, selector: "ui-input-group" }, { kind: "component", type: i2.SmzInputGroupAddonComponent, selector: "ui-input-group-addon" }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: RbkCanAccessPipe, name: "rbkCanAccess" }, { kind: "pipe", type: SearchFaqsPipe, name: "searchFaqs" }, { kind: "pipe", type: HighlightSearch, name: "highlight" }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }] });
35663
35663
  }
35664
35664
  __decorate([
35665
35665
  Confirmable('Confirma a criação desta pergunta/resposta ?', 'Aviso')
@@ -35669,7 +35669,7 @@ __decorate([
35669
35669
  ], FaqsContentComponent.prototype, "delete", null);
35670
35670
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: FaqsContentComponent, decorators: [{
35671
35671
  type: Component,
35672
- args: [{ selector: 'smz-faqs-content', standalone: false, template: "<div class=\"grid\">\r\n\r\n <div class=\"col-12\">\r\n <h3>{{ manager.config.placeholders.searchTitle }}</h3>\r\n\r\n <ui-input-group>\r\n <ui-input-group-addon>\r\n <i class=\"fa-solid fa-magnifying-glass\"></i>\r\n </ui-input-group-addon>\r\n\r\n <input\r\n type=\"text\"\r\n smzInputText\r\n [(ngModel)]=\"keywords\"\r\n [placeholder]=\"manager.config.placeholders.searchPlaceholder\"\r\n />\r\n\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" [disabled]=\"keywords === ''\" (click)=\"keywords = ''\" styleClass=\"p-button-warn\"></button>\r\n </ui-input-group>\r\n </div>\r\n\r\n <div class=\"col-12\">\r\n @if ((items | searchFaqs : keywords); as filtered) {\r\n @if (filtered.length > 0) {\r\n <h3>{{ manager.config.placeholders.contentTitle }}</h3>\r\n <ui-accordion [multiple]=\"true\">\r\n @for (item of filtered; track item.id) {\r\n <ui-accordion-panel [value]=\"item.id\">\r\n <ui-accordion-header>{{ item.question }}</ui-accordion-header>\r\n\r\n <ui-accordion-content>\r\n @if (manager.config.creationClaim | rbkCanAccess) {\r\n <div class=\"faqs__actions\">\r\n <a class=\"clickable hvr-icon-push mr-2\" (click)=\"update(item)\"><i class=\"far fa-edit hvr-icon\"></i></a>\r\n <a class=\"clickable hvr-icon-push\" (click)=\"delete(item)\"><i class=\"far fa-trash-alt hvr-icon\"></i></a>\r\n </div>\r\n }\r\n\r\n <div class=\"faqs__answer\" [innerHTML]=\"(item.answer | highlight : keywords) | safeHtml\"></div>\r\n </ui-accordion-content>\r\n </ui-accordion-panel>\r\n }\r\n </ui-accordion>\r\n } @else {\r\n <smz-icon-message\r\n [message]=\"manager.config.placeholders.emptyMessage\"\r\n [comment]=\"(manager.config.creationClaim | rbkCanAccess) ?\r\n manager.config.placeholders.creationMessage :\r\n (keywords === '') ?\r\n manager.config.placeholders.supportMessage :\r\n manager.config.placeholders.noSearchResultsMessage\"\r\n >\r\n </smz-icon-message>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"col-12\">\r\n @if ((manager.config.creationClaim | rbkCanAccess) && formConfig != null) {\r\n <h3>{{ manager.config.placeholders.creationTitle }}</h3>\r\n <smz-form-group #creationComponent [config]=\"formConfig\"></smz-form-group>\r\n <button smzButton type=\"button\" label=\"ENVIAR\" [disabled]=\"!creationComponent.isValid\" (click)=\"create(creationComponent)\" styleClass=\"p-button-ghost\"></button>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".faqs__answer{white-space:pre-wrap}.faqs__actions{width:100%;text-align:right;padding:0 0 10px}.p-input-icon-left,.p-input-icon-right{position:relative}.ui-float-icon{position:absolute;top:50%;margin-top:-.5rem;left:.5rem;color:#6c757d}.p-input-icon-left>.ui-inputtext{padding-left:2rem;border-left-width:1px}\n"] }]
35672
+ args: [{ selector: 'smz-faqs-content', standalone: false, template: "<div class=\"grid grid-cols-12 gap-4 pb-2\">\r\n\r\n <div class=\"col-span-12 min-w-0\">\r\n <h3>{{ manager.config.placeholders.searchTitle }}</h3>\r\n\r\n <ui-input-group>\r\n <ui-input-group-addon>\r\n <i class=\"fa-solid fa-magnifying-glass\"></i>\r\n </ui-input-group-addon>\r\n\r\n <input\r\n type=\"text\"\r\n smzInputText\r\n [(ngModel)]=\"keywords\"\r\n [placeholder]=\"manager.config.placeholders.searchPlaceholder\"\r\n />\r\n\r\n <button smzButton type=\"button\" icon=\"fa-solid fa-xmark\" [disabled]=\"keywords === ''\" (click)=\"keywords = ''\" styleClass=\"p-button-warn\"></button>\r\n </ui-input-group>\r\n </div>\r\n\r\n <div class=\"col-span-12 min-w-0\">\r\n @if ((items | searchFaqs : keywords); as filtered) {\r\n @if (filtered.length > 0) {\r\n <h3>{{ manager.config.placeholders.contentTitle }}</h3>\r\n <ui-accordion [multiple]=\"true\">\r\n @for (item of filtered; track item.id) {\r\n <ui-accordion-panel [value]=\"item.id\">\r\n <ui-accordion-header>{{ item.question }}</ui-accordion-header>\r\n\r\n <ui-accordion-content>\r\n @if (manager.config.creationClaim | rbkCanAccess) {\r\n <div class=\"faqs__actions\">\r\n <a class=\"clickable hvr-icon-push mr-2\" (click)=\"update(item)\"><i class=\"far fa-edit hvr-icon\"></i></a>\r\n <a class=\"clickable hvr-icon-push\" (click)=\"delete(item)\"><i class=\"far fa-trash-alt hvr-icon\"></i></a>\r\n </div>\r\n }\r\n\r\n <div class=\"faqs__answer\" [innerHTML]=\"(item.answer | highlight : keywords) | safeHtml\"></div>\r\n </ui-accordion-content>\r\n </ui-accordion-panel>\r\n }\r\n </ui-accordion>\r\n } @else {\r\n <smz-icon-message\r\n [message]=\"manager.config.placeholders.emptyMessage\"\r\n [comment]=\"(manager.config.creationClaim | rbkCanAccess) ?\r\n manager.config.placeholders.creationMessage :\r\n (keywords === '') ?\r\n manager.config.placeholders.supportMessage :\r\n manager.config.placeholders.noSearchResultsMessage\"\r\n >\r\n </smz-icon-message>\r\n }\r\n }\r\n </div>\r\n\r\n <div class=\"col-span-12 min-w-0\">\r\n @if ((manager.config.creationClaim | rbkCanAccess) && formConfig != null) {\r\n <h3>{{ manager.config.placeholders.creationTitle }}</h3>\r\n <smz-form-group #creationComponent [config]=\"formConfig\"></smz-form-group>\r\n <button smzButton type=\"button\" label=\"ENVIAR\" [disabled]=\"!creationComponent.isValid\" (click)=\"create(creationComponent)\" styleClass=\"p-button-ghost\"></button>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".faqs__answer{white-space:pre-wrap}.faqs__actions{width:100%;text-align:right;padding:0 0 10px}.p-input-icon-left,.p-input-icon-right{position:relative}.ui-float-icon{position:absolute;top:50%;margin-top:-.5rem;left:.5rem;color:#6c757d}.p-input-icon-left>.ui-inputtext{padding-left:2rem;border-left-width:1px}\n"] }]
35673
35673
  }], ctorParameters: () => [{ type: FaqsManagerService }, { type: i0.ChangeDetectorRef }, { type: SmzDialogsService }], propDecorators: { items: [{
35674
35674
  type: Input
35675
35675
  }], create: [], delete: [] } });
@@ -36457,11 +36457,11 @@ class LoaderCubeComponent {
36457
36457
  this.width = `${Math.round((characters * 160) / 18)}px`;
36458
36458
  }
36459
36459
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LoaderCubeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
36460
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: LoaderCubeComponent, isStandalone: false, selector: "smz-ui-loader-cube", inputs: { title: "title", message: "message", width: "width" }, ngImport: i0, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-cube-grid\">\r\n <div class=\"sk-cube sk-cube1\"></div>\r\n <div class=\"sk-cube sk-cube2\"></div>\r\n <div class=\"sk-cube sk-cube3\"></div>\r\n <div class=\"sk-cube sk-cube4\"></div>\r\n <div class=\"sk-cube sk-cube5\"></div>\r\n <div class=\"sk-cube sk-cube6\"></div>\r\n <div class=\"sk-cube sk-cube7\"></div>\r\n <div class=\"sk-cube sk-cube8\"></div>\r\n <div class=\"sk-cube sk-cube9\"></div>\r\n </div>\r\n </div>\r\n <div class=\"text-container grid flex-col items-start justify-middle\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:10px}.spinner-container{--aspect-ratio: 1/1;height:60px;width:60px;background:var(--primary-color);border-radius:60px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.sk-cube-grid{margin-top:14px!important;width:30px;height:30px;margin:0 auto}.sk-cube-grid .sk-cube{width:33%;height:33%;background-color:var(--surface-card);float:left;-webkit-animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out;animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out}.sk-cube-grid .sk-cube1{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube2{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube3{-webkit-animation-delay:.4s;animation-delay:.4s}.sk-cube-grid .sk-cube4{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube5{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube6{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube7{-webkit-animation-delay:0s;animation-delay:0s}.sk-cube-grid .sk-cube8{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube9{-webkit-animation-delay:.2s;animation-delay:.2s}@-webkit-keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}@keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
36460
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: LoaderCubeComponent, isStandalone: false, selector: "smz-ui-loader-cube", inputs: { title: "title", message: "message", width: "width" }, ngImport: i0, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-cube-grid\">\r\n <div class=\"sk-cube sk-cube1\"></div>\r\n <div class=\"sk-cube sk-cube2\"></div>\r\n <div class=\"sk-cube sk-cube3\"></div>\r\n <div class=\"sk-cube sk-cube4\"></div>\r\n <div class=\"sk-cube sk-cube5\"></div>\r\n <div class=\"sk-cube sk-cube6\"></div>\r\n <div class=\"sk-cube sk-cube7\"></div>\r\n <div class=\"sk-cube sk-cube8\"></div>\r\n <div class=\"sk-cube sk-cube9\"></div>\r\n </div>\r\n </div>\r\n <div class=\"text-container flex flex-wrap flex-col items-start justify-middle -mt-2 -mx-2\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:10px}.spinner-container{--aspect-ratio: 1/1;height:60px;width:60px;background:var(--primary-color);border-radius:60px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.sk-cube-grid{margin-top:14px!important;width:30px;height:30px;margin:0 auto}.sk-cube-grid .sk-cube{width:33%;height:33%;background-color:var(--surface-card);float:left;-webkit-animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out;animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out}.sk-cube-grid .sk-cube1{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube2{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube3{-webkit-animation-delay:.4s;animation-delay:.4s}.sk-cube-grid .sk-cube4{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube5{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube6{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube7{-webkit-animation-delay:0s;animation-delay:0s}.sk-cube-grid .sk-cube8{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube9{-webkit-animation-delay:.2s;animation-delay:.2s}@-webkit-keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}@keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
36461
36461
  }
36462
36462
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LoaderCubeComponent, decorators: [{
36463
36463
  type: Component,
36464
- args: [{ selector: 'smz-ui-loader-cube', standalone: false, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-cube-grid\">\r\n <div class=\"sk-cube sk-cube1\"></div>\r\n <div class=\"sk-cube sk-cube2\"></div>\r\n <div class=\"sk-cube sk-cube3\"></div>\r\n <div class=\"sk-cube sk-cube4\"></div>\r\n <div class=\"sk-cube sk-cube5\"></div>\r\n <div class=\"sk-cube sk-cube6\"></div>\r\n <div class=\"sk-cube sk-cube7\"></div>\r\n <div class=\"sk-cube sk-cube8\"></div>\r\n <div class=\"sk-cube sk-cube9\"></div>\r\n </div>\r\n </div>\r\n <div class=\"text-container grid flex-col items-start justify-middle\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:10px}.spinner-container{--aspect-ratio: 1/1;height:60px;width:60px;background:var(--primary-color);border-radius:60px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.sk-cube-grid{margin-top:14px!important;width:30px;height:30px;margin:0 auto}.sk-cube-grid .sk-cube{width:33%;height:33%;background-color:var(--surface-card);float:left;-webkit-animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out;animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out}.sk-cube-grid .sk-cube1{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube2{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube3{-webkit-animation-delay:.4s;animation-delay:.4s}.sk-cube-grid .sk-cube4{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube5{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube6{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube7{-webkit-animation-delay:0s;animation-delay:0s}.sk-cube-grid .sk-cube8{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube9{-webkit-animation-delay:.2s;animation-delay:.2s}@-webkit-keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}@keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}\n"] }]
36464
+ args: [{ selector: 'smz-ui-loader-cube', standalone: false, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-cube-grid\">\r\n <div class=\"sk-cube sk-cube1\"></div>\r\n <div class=\"sk-cube sk-cube2\"></div>\r\n <div class=\"sk-cube sk-cube3\"></div>\r\n <div class=\"sk-cube sk-cube4\"></div>\r\n <div class=\"sk-cube sk-cube5\"></div>\r\n <div class=\"sk-cube sk-cube6\"></div>\r\n <div class=\"sk-cube sk-cube7\"></div>\r\n <div class=\"sk-cube sk-cube8\"></div>\r\n <div class=\"sk-cube sk-cube9\"></div>\r\n </div>\r\n </div>\r\n <div class=\"text-container flex flex-wrap flex-col items-start justify-middle -mt-2 -mx-2\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:10px}.spinner-container{--aspect-ratio: 1/1;height:60px;width:60px;background:var(--primary-color);border-radius:60px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.sk-cube-grid{margin-top:14px!important;width:30px;height:30px;margin:0 auto}.sk-cube-grid .sk-cube{width:33%;height:33%;background-color:var(--surface-card);float:left;-webkit-animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out;animation:sk-cubeGridScaleDelay 1.3s infinite ease-in-out}.sk-cube-grid .sk-cube1{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube2{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube3{-webkit-animation-delay:.4s;animation-delay:.4s}.sk-cube-grid .sk-cube4{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube5{-webkit-animation-delay:.2s;animation-delay:.2s}.sk-cube-grid .sk-cube6{-webkit-animation-delay:.3s;animation-delay:.3s}.sk-cube-grid .sk-cube7{-webkit-animation-delay:0s;animation-delay:0s}.sk-cube-grid .sk-cube8{-webkit-animation-delay:.1s;animation-delay:.1s}.sk-cube-grid .sk-cube9{-webkit-animation-delay:.2s;animation-delay:.2s}@-webkit-keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}@keyframes sk-cubeGridScaleDelay{0%,70%,to{-webkit-transform:scale3D(1,1,1);transform:scaleZ(1)}35%{-webkit-transform:scale3D(0,0,1);transform:scale3D(0,0,1)}}\n"] }]
36465
36465
  }], ctorParameters: () => [], propDecorators: { title: [{
36466
36466
  type: Input
36467
36467
  }], message: [{
@@ -36486,11 +36486,11 @@ class LoaderSquareComponent {
36486
36486
  this.width = `${Math.round((characters * 160) / 18)}px`;
36487
36487
  }
36488
36488
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LoaderSquareComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
36489
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: LoaderSquareComponent, isStandalone: false, selector: "smz-ui-loader-square", inputs: { title: "title", message: "message", width: "width" }, ngImport: i0, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-square-grid\">\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-one\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-two\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-three\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-four\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"text-container grid flex-col items-start justify-middle\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:8px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.spinner-container{height:65px;width:65px;display:flex;justify-content:center;align-items:center;background:var(--primary-color);border-radius:100%}.sk-square-grid{height:35px;width:35px;transform:rotate(45deg);font-size:0;line-height:0;animation:rotate-loader 5s infinite;padding:4px;border:1px solid var(--surface-card)}.sk-segment-holder{position:relative;display:inline-block;width:50%;height:50%}.sk-segment{position:absolute;background:var(--surface-card)}.sk-one{bottom:0;height:0;width:100%;animation:slide-one 1s infinite}.sk-two{left:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.25s}.sk-three{right:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.75s}.sk-four{top:0;height:0;width:100%;animation:slide-one 1s infinite;animation-delay:.5s}@keyframes slide-one{0%{height:0;opacity:1}12.5%{height:100%;opacity:1}50%{opacity:1}to{height:100%;opacity:0}}@keyframes slide-two{0%{width:0;opacity:1}12.5%{width:100%;opacity:1}50%{opacity:1}to{width:100%;opacity:0}}@keyframes rotate-loader{0%{transform:rotate(45deg)}20%{transform:rotate(45deg)}25%{transform:rotate(135deg)}45%{transform:rotate(135deg)}50%{transform:rotate(225deg)}70%{transform:rotate(225deg)}75%{transform:rotate(315deg)}95%{transform:rotate(315deg)}to{transform:rotate(405deg)}}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
36489
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: LoaderSquareComponent, isStandalone: false, selector: "smz-ui-loader-square", inputs: { title: "title", message: "message", width: "width" }, ngImport: i0, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-square-grid\">\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-one\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-two\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-three\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-four\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"text-container flex flex-wrap flex-col items-start justify-middle -mt-2 -mx-2\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:8px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.spinner-container{height:65px;width:65px;display:flex;justify-content:center;align-items:center;background:var(--primary-color);border-radius:100%}.sk-square-grid{height:35px;width:35px;transform:rotate(45deg);font-size:0;line-height:0;animation:rotate-loader 5s infinite;padding:4px;border:1px solid var(--surface-card)}.sk-segment-holder{position:relative;display:inline-block;width:50%;height:50%}.sk-segment{position:absolute;background:var(--surface-card)}.sk-one{bottom:0;height:0;width:100%;animation:slide-one 1s infinite}.sk-two{left:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.25s}.sk-three{right:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.75s}.sk-four{top:0;height:0;width:100%;animation:slide-one 1s infinite;animation-delay:.5s}@keyframes slide-one{0%{height:0;opacity:1}12.5%{height:100%;opacity:1}50%{opacity:1}to{height:100%;opacity:0}}@keyframes slide-two{0%{width:0;opacity:1}12.5%{width:100%;opacity:1}50%{opacity:1}to{width:100%;opacity:0}}@keyframes rotate-loader{0%{transform:rotate(45deg)}20%{transform:rotate(45deg)}25%{transform:rotate(135deg)}45%{transform:rotate(135deg)}50%{transform:rotate(225deg)}70%{transform:rotate(225deg)}75%{transform:rotate(315deg)}95%{transform:rotate(315deg)}to{transform:rotate(405deg)}}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
36490
36490
  }
36491
36491
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: LoaderSquareComponent, decorators: [{
36492
36492
  type: Component,
36493
- args: [{ selector: 'smz-ui-loader-square', standalone: false, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-square-grid\">\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-one\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-two\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-three\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-four\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"text-container grid flex-col items-start justify-middle\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:8px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.spinner-container{height:65px;width:65px;display:flex;justify-content:center;align-items:center;background:var(--primary-color);border-radius:100%}.sk-square-grid{height:35px;width:35px;transform:rotate(45deg);font-size:0;line-height:0;animation:rotate-loader 5s infinite;padding:4px;border:1px solid var(--surface-card)}.sk-segment-holder{position:relative;display:inline-block;width:50%;height:50%}.sk-segment{position:absolute;background:var(--surface-card)}.sk-one{bottom:0;height:0;width:100%;animation:slide-one 1s infinite}.sk-two{left:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.25s}.sk-three{right:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.75s}.sk-four{top:0;height:0;width:100%;animation:slide-one 1s infinite;animation-delay:.5s}@keyframes slide-one{0%{height:0;opacity:1}12.5%{height:100%;opacity:1}50%{opacity:1}to{height:100%;opacity:0}}@keyframes slide-two{0%{width:0;opacity:1}12.5%{width:100%;opacity:1}50%{opacity:1}to{width:100%;opacity:0}}@keyframes rotate-loader{0%{transform:rotate(45deg)}20%{transform:rotate(45deg)}25%{transform:rotate(135deg)}45%{transform:rotate(135deg)}50%{transform:rotate(225deg)}70%{transform:rotate(225deg)}75%{transform:rotate(315deg)}95%{transform:rotate(315deg)}to{transform:rotate(405deg)}}\n"] }]
36493
+ args: [{ selector: 'smz-ui-loader-square', standalone: false, template: "<div class=\"loading-page-container\">\r\n <div class=\"loading-container\" [ngStyle]=\"{ 'width': width }\">\r\n <div class=\"spinner-container\">\r\n <div class=\"sk-square-grid\">\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-one\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-two\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-three\"></div>\r\n </div>\r\n <div class=\"sk-segment-holder\">\r\n <div class=\"sk-segment sk-four\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"text-container flex flex-wrap flex-col items-start justify-middle -mt-2 -mx-2\">\r\n <h3>{{ title }}</h3>\r\n <p>{{ message }}</p>\r\n </div>\r\n </div>\r\n</div>", styles: [".loading-page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1;-webkit-user-select:none;user-select:none;z-index:10001}.loading-container{min-width:230px;max-width:500px;height:80px;background:var(--surface-card);border-radius:60px;border:1px solid var(--surface-ground);box-shadow:0 6.2px 4.5px #00000006,0 14.4px 10.6px #00000009,0 25.8px 19px #0000000a,0 42.9px 31.5px #0000000c,0 70.6px 51.8px #0000000e,0 123.4px 90.6px #0001,0 267px 196px #00000017;display:grid!important;grid-template-columns:70px 1fr;grid-template-rows:60px;grid-column-gap:10px;grid-row-gap:0px;margin-left:auto;margin-right:auto;margin-top:calc(50vh - 40px);padding:8px}.text-container h3{font-size:18px;color:var(--text-color);margin-top:16px;margin-bottom:0}.text-container p{color:var(--text-color);margin:2px 0 0;font-size:12px;line-height:15px}.spinner-container{height:65px;width:65px;display:flex;justify-content:center;align-items:center;background:var(--primary-color);border-radius:100%}.sk-square-grid{height:35px;width:35px;transform:rotate(45deg);font-size:0;line-height:0;animation:rotate-loader 5s infinite;padding:4px;border:1px solid var(--surface-card)}.sk-segment-holder{position:relative;display:inline-block;width:50%;height:50%}.sk-segment{position:absolute;background:var(--surface-card)}.sk-one{bottom:0;height:0;width:100%;animation:slide-one 1s infinite}.sk-two{left:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.25s}.sk-three{right:0;height:100%;width:0;animation:slide-two 1s infinite;animation-delay:.75s}.sk-four{top:0;height:0;width:100%;animation:slide-one 1s infinite;animation-delay:.5s}@keyframes slide-one{0%{height:0;opacity:1}12.5%{height:100%;opacity:1}50%{opacity:1}to{height:100%;opacity:0}}@keyframes slide-two{0%{width:0;opacity:1}12.5%{width:100%;opacity:1}50%{opacity:1}to{width:100%;opacity:0}}@keyframes rotate-loader{0%{transform:rotate(45deg)}20%{transform:rotate(45deg)}25%{transform:rotate(135deg)}45%{transform:rotate(135deg)}50%{transform:rotate(225deg)}70%{transform:rotate(225deg)}75%{transform:rotate(315deg)}95%{transform:rotate(315deg)}to{transform:rotate(405deg)}}\n"] }]
36494
36494
  }], ctorParameters: () => [], propDecorators: { title: [{
36495
36495
  type: Input
36496
36496
  }], message: [{
@@ -36557,11 +36557,11 @@ class SmzDockComponent {
36557
36557
  }
36558
36558
  }
36559
36559
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
36560
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDockComponent, isStandalone: false, selector: "smz-ui-dock", ngImport: i0, template: "<div class=\"dock-window fixed bottom-0 left-0 right-0 z-50\" [class.hidden]=\"dockService.dockItems().length === 0\">\r\n <div class=\"flex items-end justify-center gap-2 px-4 py-2\" role=\"toolbar\" aria-label=\"Janelas minimizadas\">\r\n @for (item of dockService.dockItems(); track item.id) {\r\n <div class=\"relative w-16 cursor-pointer transition-transform duration-ui hover:-translate-y-1\" role=\"button\" tabindex=\"0\" (click)=\"execute(item)\" (keydown.enter)=\"execute(item)\">\r\n <img [src]=\"item.icon\" width=\"100%\" [alt]=\"item.label ?? ''\">\r\n @if (item.label != null) {\r\n <div class=\"absolute inset-0 grid grid-nogutter items-center justify-center flex-col\">\r\n <div class=\"text-center font-medium my-auto pt-2 select-none text-black text-xs\">{{ item.label }}</div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n" });
36560
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzDockComponent, isStandalone: false, selector: "smz-ui-dock", ngImport: i0, template: "<div class=\"dock-window fixed bottom-0 left-0 right-0 z-50\" [class.hidden]=\"dockService.dockItems().length === 0\">\r\n <div class=\"flex items-end justify-center gap-2 px-4 py-2\" role=\"toolbar\" aria-label=\"Janelas minimizadas\">\r\n @for (item of dockService.dockItems(); track item.id) {\r\n <div class=\"relative w-16 cursor-pointer transition-transform duration-ui hover:-translate-y-1\" role=\"button\" tabindex=\"0\" (click)=\"execute(item)\" (keydown.enter)=\"execute(item)\">\r\n <img [src]=\"item.icon\" width=\"100%\" [alt]=\"item.label ?? ''\">\r\n @if (item.label != null) {\r\n <div class=\"absolute inset-0 flex flex-wrap items-center justify-center flex-col\">\r\n <div class=\"text-center font-medium my-auto pt-2 select-none text-black text-xs\">{{ item.label }}</div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n" });
36561
36561
  }
36562
36562
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzDockComponent, decorators: [{
36563
36563
  type: Component,
36564
- args: [{ selector: 'smz-ui-dock', standalone: false, template: "<div class=\"dock-window fixed bottom-0 left-0 right-0 z-50\" [class.hidden]=\"dockService.dockItems().length === 0\">\r\n <div class=\"flex items-end justify-center gap-2 px-4 py-2\" role=\"toolbar\" aria-label=\"Janelas minimizadas\">\r\n @for (item of dockService.dockItems(); track item.id) {\r\n <div class=\"relative w-16 cursor-pointer transition-transform duration-ui hover:-translate-y-1\" role=\"button\" tabindex=\"0\" (click)=\"execute(item)\" (keydown.enter)=\"execute(item)\">\r\n <img [src]=\"item.icon\" width=\"100%\" [alt]=\"item.label ?? ''\">\r\n @if (item.label != null) {\r\n <div class=\"absolute inset-0 grid grid-nogutter items-center justify-center flex-col\">\r\n <div class=\"text-center font-medium my-auto pt-2 select-none text-black text-xs\">{{ item.label }}</div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n" }]
36564
+ args: [{ selector: 'smz-ui-dock', standalone: false, template: "<div class=\"dock-window fixed bottom-0 left-0 right-0 z-50\" [class.hidden]=\"dockService.dockItems().length === 0\">\r\n <div class=\"flex items-end justify-center gap-2 px-4 py-2\" role=\"toolbar\" aria-label=\"Janelas minimizadas\">\r\n @for (item of dockService.dockItems(); track item.id) {\r\n <div class=\"relative w-16 cursor-pointer transition-transform duration-ui hover:-translate-y-1\" role=\"button\" tabindex=\"0\" (click)=\"execute(item)\" (keydown.enter)=\"execute(item)\">\r\n <img [src]=\"item.icon\" width=\"100%\" [alt]=\"item.label ?? ''\">\r\n @if (item.label != null) {\r\n <div class=\"absolute inset-0 flex flex-wrap items-center justify-center flex-col\">\r\n <div class=\"text-center font-medium my-auto pt-2 select-none text-black text-xs\">{{ item.label }}</div>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n" }]
36565
36565
  }] });
36566
36566
 
36567
36567
  /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return, @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type, @typescript-eslint/typedef, no-underscore-dangle, no-console, eqeqeq, @typescript-eslint/no-unused-vars, @typescript-eslint/no-useless-constructor, @typescript-eslint/explicit-member-accessibility, max-len, no-prototype-builtins, @typescript-eslint/no-shadow, @typescript-eslint/no-empty-object-type */
@@ -36671,7 +36671,7 @@ class SmzCellChartBuilder extends SmzDocumentBaseCellBuilder {
36671
36671
  return this.that;
36672
36672
  }
36673
36673
  setWidth(width) {
36674
- const newStyle = width === 'auto' ? 'col' : `${width}`;
36674
+ const newStyle = width === 'auto' ? 'flex-1' : `${width}`;
36675
36675
  this.cellData.flexWidth = newStyle;
36676
36676
  return this;
36677
36677
  }
@@ -37021,12 +37021,12 @@ class SmzCellFieldGroupBuilder {
37021
37021
  container: { styles: defaultConfig.fields.container },
37022
37022
  label: { value: label, isVisible: label !== null && label !== undefined, styles: defaultConfig.fields.label },
37023
37023
  text: { value: text, styles: defaultConfig.fields.text },
37024
- flexWidth: 'col'
37024
+ flexWidth: 'flex-1'
37025
37025
  };
37026
37026
  this.groupBuilderRef.cellData.fields.push(this.fieldGroupData);
37027
37027
  }
37028
37028
  setWidth(width) {
37029
- const newStyle = width === 'auto' ? 'col' : `${width}`;
37029
+ const newStyle = width === 'auto' ? 'flex-1' : `${width}`;
37030
37030
  this.fieldGroupData.flexWidth = newStyle;
37031
37031
  return this;
37032
37032
  }
@@ -37264,7 +37264,7 @@ class SmzCellComponentBuilder extends SmzDocumentBaseCellBuilder {
37264
37264
  return this.that;
37265
37265
  }
37266
37266
  setWidth(width) {
37267
- const newStyle = width === 'auto' ? 'col' : `${width}`;
37267
+ const newStyle = width === 'auto' ? 'flex-1' : `${width}`;
37268
37268
  this.cellData.flexWidth = newStyle;
37269
37269
  return this;
37270
37270
  }
@@ -37432,7 +37432,7 @@ class SmzDocumentRowBuilder extends SmzBuilderUtilities {
37432
37432
  chart(chartData) {
37433
37433
  const cell = { colspan: 1, rowspan: 1, height: '100%', width: 'auto', data: null };
37434
37434
  this.rowData.cells.push(cell);
37435
- const item = { type: SmzDocumentFeatureDefinitions.CHART, content: { chartData }, flexWidth: 'col', height: undefined };
37435
+ const item = { type: SmzDocumentFeatureDefinitions.CHART, content: { chartData }, flexWidth: 'flex-1', height: undefined };
37436
37436
  cell.data = item;
37437
37437
  return new SmzCellChartBuilder(this, cell, item, this.documentBuilderRef);
37438
37438
  }
@@ -37440,7 +37440,7 @@ class SmzDocumentRowBuilder extends SmzBuilderUtilities {
37440
37440
  const cell = { colspan: 1, rowspan: 1, height: '100%', width: 'auto', data: null };
37441
37441
  this.rowData.cells.push(cell);
37442
37442
  const injectable = { component: component, inputs: [], outputs: [], styleClass: 'w-full h-full' };
37443
- const item = { type: SmzDocumentFeatureDefinitions.COMPONENT, content: { component: injectable }, flexWidth: 'col' };
37443
+ const item = { type: SmzDocumentFeatureDefinitions.COMPONENT, content: { component: injectable }, flexWidth: 'flex-1' };
37444
37444
  cell.data = item;
37445
37445
  return new SmzCellComponentBuilder(this, cell, item, this.documentBuilderRef);
37446
37446
  }
@@ -38325,7 +38325,7 @@ class HephaestusProfileMenuComponent {
38325
38325
  }
38326
38326
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: HephaestusProfileMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38327
38327
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: HephaestusProfileMenuComponent, isStandalone: false, selector: "[smz-ui-hephaestus-profile-menu]", inputs: { items: "items" }, host: { properties: { "class": "this.themeClass" } }, ngImport: i0, template: `
38328
- <a class="profile clickable grid items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
38328
+ <a class="profile clickable flex flex-wrap items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
38329
38329
  @if (userData$ | async; as userdata) {
38330
38330
  <span class="username">{{ uiConfig.layouts.profileMessage }}{{ userdata[uiConfig.layouts.usernameProperty] }}</span>
38331
38331
  @if (uiConfig.layouts.useAvatar && userdata[uiConfig.layouts.avatarProperty]) {
@@ -38356,7 +38356,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
38356
38356
  selector: '[smz-ui-hephaestus-profile-menu]',
38357
38357
  changeDetection: ChangeDetectionStrategy.OnPush,
38358
38358
  template: `
38359
- <a class="profile clickable grid items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
38359
+ <a class="profile clickable flex flex-wrap items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
38360
38360
  @if (userData$ | async; as userdata) {
38361
38361
  <span class="username">{{ uiConfig.layouts.profileMessage }}{{ userdata[uiConfig.layouts.usernameProperty] }}</span>
38362
38362
  @if (uiConfig.layouts.useAvatar && userdata[uiConfig.layouts.avatarProperty]) {
@@ -38870,10 +38870,10 @@ class SmzLocalizationSwitchComponent {
38870
38870
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzLocalizationSwitchComponent, deps: [{ token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
38871
38871
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzLocalizationSwitchComponent, isStandalone: true, selector: "smz-localization-switch", host: { classAttribute: "h-full relative" }, ngImport: i0, template: `
38872
38872
  @if (showLocalizationSwitch) {
38873
- <smz-responsive class="col grid grid-nogutter w-full items-center justify-start">
38873
+ <smz-responsive class="flex-1 basis-0 flex flex-wrap w-full items-center justify-start p-2">
38874
38874
  <!-- LANDSCAPE -->
38875
38875
  <ng-template smzTemplate="landscape">
38876
- <div class="h-full grid grid-nogutter items-center justify-center">
38876
+ <div class="h-full flex flex-wrap items-center justify-center">
38877
38877
  <ui-select appendTo="body" [options]="locales$ | async" styleClass="smz-tenant-switch-small" optionLabel="alias" dataKey="name" [(ngModel)]="selected" (changed)="onSelectorChange($event.value)">
38878
38878
  <ng-template smzTemplate="selectedItem">
38879
38879
  @if (selected) {
@@ -38905,10 +38905,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
38905
38905
  type: Component,
38906
38906
  args: [{ selector: 'smz-localization-switch', imports: [CommonModule, SmzSelectComponent, FormsModule, SmzTemplateDirective, SmzResponsiveComponent], host: { class: 'h-full relative' }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, template: `
38907
38907
  @if (showLocalizationSwitch) {
38908
- <smz-responsive class="col grid grid-nogutter w-full items-center justify-start">
38908
+ <smz-responsive class="flex-1 basis-0 flex flex-wrap w-full items-center justify-start p-2">
38909
38909
  <!-- LANDSCAPE -->
38910
38910
  <ng-template smzTemplate="landscape">
38911
- <div class="h-full grid grid-nogutter items-center justify-center">
38911
+ <div class="h-full flex flex-wrap items-center justify-center">
38912
38912
  <ui-select appendTo="body" [options]="locales$ | async" styleClass="smz-tenant-switch-small" optionLabel="alias" dataKey="name" [(ngModel)]="selected" (changed)="onSelectorChange($event.value)">
38913
38913
  <ng-template smzTemplate="selectedItem">
38914
38914
  @if (selected) {
@@ -39388,11 +39388,11 @@ class HephaestusFooterComponent {
39388
39388
  });
39389
39389
  }
39390
39390
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: HephaestusFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
39391
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: HephaestusFooterComponent, isStandalone: false, selector: "smz-ui-hephaestus-footer", host: { classAttribute: "z-10" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container col\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright col ml-2 mr-2 hide-mobile\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
39391
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: HephaestusFooterComponent, isStandalone: false, selector: "smz-ui-hephaestus-footer", host: { classAttribute: "z-10" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container flex-1 basis-0 p-2\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright flex-1 basis-0 ml-2 mr-2 hide-mobile p-2\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
39392
39392
  }
39393
39393
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: HephaestusFooterComponent, decorators: [{
39394
39394
  type: Component,
39395
- args: [{ selector: 'smz-ui-hephaestus-footer', host: { 'class': 'z-10' }, standalone: false, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container col\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright col ml-2 mr-2 hide-mobile\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}" }]
39395
+ args: [{ selector: 'smz-ui-hephaestus-footer', host: { 'class': 'z-10' }, standalone: false, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container flex-1 basis-0 p-2\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright flex-1 basis-0 ml-2 mr-2 hide-mobile p-2\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}" }]
39396
39396
  }], ctorParameters: () => [], propDecorators: { templates: [{
39397
39397
  type: ContentChildren,
39398
39398
  args: [SmzTemplateDirective]
@@ -39568,11 +39568,11 @@ class GlobalAssistanceComponent {
39568
39568
  this.store.dispatch(new LayoutUiActions.SetAssistanceButtonPosition(data));
39569
39569
  }
39570
39570
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: GlobalAssistanceComponent, deps: [{ token: i1$3.Store }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
39571
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: GlobalAssistanceComponent, isStandalone: false, selector: "smz-ui-global-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <h5 class=\"mt-4\">\r\n Global Loading\r\n @if (timer != null) {\r\n <span>{{ timer }}</span>\r\n }\r\n </h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n <ui-toggle-switch class=\"col-12\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 5)\"></ui-toggle-switch>\r\n <ui-toggle-switch class=\"col-12\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 60)\"></ui-toggle-switch>\r\n @for (loader of loaders; track loader) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"loader.name\" class=\"mr-2 mb-2\" (click)=\"onSetGlobalLoader(loader.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Messages</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (toast of toasts; track toast) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toast.name\" class=\"mr-2 mb-2\" (click)=\"onShowToast(toast.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Positions</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (toastPosition of toastPositions; track toastPosition) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toastPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetToastPosition(toastPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Positions</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (\r\n assistancePosition of assistancePositions;\r\n track assistancePosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistancePosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistancePosition(assistancePosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Button Positions</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (\r\n assistanceButtonPosition of assistanceButtonPositions;\r\n track assistanceButtonPosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistanceButtonPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistanceButtonPosition(assistanceButtonPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Content Themes</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (content of contentThemes; track content) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"content.name\" class=\"mr-2 mb-2\" [styleClass]=\"{\r\n 'p-button-outlined': content.tone === 'light',\r\n 'p-button-secondary': content.tone === 'dark',\r\n }\" (click)=\"onSetContentTheme(content.id)\"></button>\r\n }\r\n </div>\r\n <h5>Color Schemas</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (schema of colorSchemes; track schema) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"schema.name\" class=\"mr-2 mb-2\" [ngStyle]=\"{ background: schema.color, color: schema.constrast }\" (click)=\"onSetColorSchema(schema.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n }\r\n}\r\n", styles: ["smz-ui-global-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-global-assistance .assistence_sidebar{width:25em}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzToggleSwitchComponent, selector: "ui-toggle-switch", inputs: ["name"], outputs: ["changed"] }], encapsulation: i0.ViewEncapsulation.None });
39571
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: GlobalAssistanceComponent, isStandalone: false, selector: "smz-ui-global-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <h5 class=\"mt-4\">\r\n Global Loading\r\n @if (timer != null) {\r\n <span>{{ timer }}</span>\r\n }\r\n </h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n <ui-toggle-switch class=\"w-full flex-none\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 5)\"></ui-toggle-switch>\r\n <ui-toggle-switch class=\"w-full flex-none\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 60)\"></ui-toggle-switch>\r\n @for (loader of loaders; track loader) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"loader.name\" class=\"mr-2 mb-2\" (click)=\"onSetGlobalLoader(loader.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Messages</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (toast of toasts; track toast) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toast.name\" class=\"mr-2 mb-2\" (click)=\"onShowToast(toast.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Positions</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (toastPosition of toastPositions; track toastPosition) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toastPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetToastPosition(toastPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Positions</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (\r\n assistancePosition of assistancePositions;\r\n track assistancePosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistancePosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistancePosition(assistancePosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Button Positions</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (\r\n assistanceButtonPosition of assistanceButtonPositions;\r\n track assistanceButtonPosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistanceButtonPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistanceButtonPosition(assistanceButtonPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Content Themes</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (content of contentThemes; track content) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"content.name\" class=\"mr-2 mb-2\" [styleClass]=\"{\r\n 'p-button-outlined': content.tone === 'light',\r\n 'p-button-secondary': content.tone === 'dark',\r\n }\" (click)=\"onSetContentTheme(content.id)\"></button>\r\n }\r\n </div>\r\n <h5>Color Schemas</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (schema of colorSchemes; track schema) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"schema.name\" class=\"mr-2 mb-2\" [ngStyle]=\"{ background: schema.color, color: schema.constrast }\" (click)=\"onSetColorSchema(schema.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n }\r\n}\r\n", styles: ["smz-ui-global-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-global-assistance .assistence_sidebar{width:25em}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: i2.SmzToggleSwitchComponent, selector: "ui-toggle-switch", inputs: ["name"], outputs: ["changed"] }], encapsulation: i0.ViewEncapsulation.None });
39572
39572
  }
39573
39573
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: GlobalAssistanceComponent, decorators: [{
39574
39574
  type: Component,
39575
- args: [{ selector: 'smz-ui-global-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <h5 class=\"mt-4\">\r\n Global Loading\r\n @if (timer != null) {\r\n <span>{{ timer }}</span>\r\n }\r\n </h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n <ui-toggle-switch class=\"col-12\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 5)\"></ui-toggle-switch>\r\n <ui-toggle-switch class=\"col-12\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 60)\"></ui-toggle-switch>\r\n @for (loader of loaders; track loader) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"loader.name\" class=\"mr-2 mb-2\" (click)=\"onSetGlobalLoader(loader.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Messages</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (toast of toasts; track toast) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toast.name\" class=\"mr-2 mb-2\" (click)=\"onShowToast(toast.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Positions</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (toastPosition of toastPositions; track toastPosition) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toastPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetToastPosition(toastPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Positions</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (\r\n assistancePosition of assistancePositions;\r\n track assistancePosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistancePosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistancePosition(assistancePosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Button Positions</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (\r\n assistanceButtonPosition of assistanceButtonPositions;\r\n track assistanceButtonPosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistanceButtonPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistanceButtonPosition(assistanceButtonPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Content Themes</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (content of contentThemes; track content) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"content.name\" class=\"mr-2 mb-2\" [styleClass]=\"{\r\n 'p-button-outlined': content.tone === 'light',\r\n 'p-button-secondary': content.tone === 'dark',\r\n }\" (click)=\"onSetContentTheme(content.id)\"></button>\r\n }\r\n </div>\r\n <h5>Color Schemas</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n @for (schema of colorSchemes; track schema) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"schema.name\" class=\"mr-2 mb-2\" [ngStyle]=\"{ background: schema.color, color: schema.constrast }\" (click)=\"onSetColorSchema(schema.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n }\r\n}\r\n", styles: ["smz-ui-global-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-global-assistance .assistence_sidebar{width:25em}\n"] }]
39575
+ args: [{ selector: 'smz-ui-global-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <h5 class=\"mt-4\">\r\n Global Loading\r\n @if (timer != null) {\r\n <span>{{ timer }}</span>\r\n }\r\n </h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n <ui-toggle-switch class=\"w-full flex-none\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 5)\"></ui-toggle-switch>\r\n <ui-toggle-switch class=\"w-full flex-none\" [(ngModel)]=\"globalIsLoading\" (changed)=\"changeGlobalLoading($event, 60)\"></ui-toggle-switch>\r\n @for (loader of loaders; track loader) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"loader.name\" class=\"mr-2 mb-2\" (click)=\"onSetGlobalLoader(loader.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Messages</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (toast of toasts; track toast) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toast.name\" class=\"mr-2 mb-2\" (click)=\"onShowToast(toast.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Toast Positions</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (toastPosition of toastPositions; track toastPosition) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"toastPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetToastPosition(toastPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Positions</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (\r\n assistancePosition of assistancePositions;\r\n track assistancePosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistancePosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistancePosition(assistancePosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Assistance Button Positions</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (\r\n assistanceButtonPosition of assistanceButtonPositions;\r\n track assistanceButtonPosition\r\n ) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"assistanceButtonPosition.name\" class=\"mr-2 mb-2\" (click)=\"onSetAssistanceButtonPosition(assistanceButtonPosition.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n <h5>Content Themes</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (content of contentThemes; track content) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"content.name\" class=\"mr-2 mb-2\" [styleClass]=\"{\r\n 'p-button-outlined': content.tone === 'light',\r\n 'p-button-secondary': content.tone === 'dark',\r\n }\" (click)=\"onSetContentTheme(content.id)\"></button>\r\n }\r\n </div>\r\n <h5>Color Schemas</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n @for (schema of colorSchemes; track schema) {\r\n <button smzButton smzRipple type=\"button\" [label]=\"schema.name\" class=\"mr-2 mb-2\" [ngStyle]=\"{ background: schema.color, color: schema.constrast }\" (click)=\"onSetColorSchema(schema.id)\" variant=\"outlined\"></button>\r\n }\r\n </div>\r\n }\r\n}\r\n", styles: ["smz-ui-global-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-global-assistance .assistence_sidebar{width:25em}\n"] }]
39576
39576
  }], ctorParameters: () => [{ type: i1$3.Store }, { type: i0.ChangeDetectorRef }] });
39577
39577
 
39578
39578
  /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return, @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type, @typescript-eslint/typedef, no-underscore-dangle, no-console, eqeqeq, @typescript-eslint/no-unused-vars, @typescript-eslint/no-useless-constructor, @typescript-eslint/explicit-member-accessibility, max-len, no-prototype-builtins, @typescript-eslint/no-shadow, @typescript-eslint/no-empty-object-type */
@@ -39632,11 +39632,11 @@ class HephaestusAssistanceComponent {
39632
39632
  this.store.dispatch(new LayoutUiActions.ShowConfigAssistance);
39633
39633
  }
39634
39634
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: HephaestusAssistanceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
39635
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: HephaestusAssistanceComponent, isStandalone: false, selector: "smz-ui-hephaestus-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear\"></i></a>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"grid flex-col items-start justify-start p-2 grid-nogutter\">\r\n <h5>Menu</h5>\r\n <div class=\"grid grid-nogutter\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"col-5 mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"col mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-hephaestus-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-hephaestus-assistance .assistence_sidebar{width:35em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzDrawerComponent, selector: "ui-drawer", inputs: ["visible", "position", "fullScreen", "header", "modal", "dismissible", "closeOnEscape", "showCloseIcon", "style", "styleClass", "blockScroll", "ariaCloseLabel", "appendTo"], outputs: ["visibleChange", "shown", "hidden"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: InputChangeDetectionDirective, selector: "[appInputChangeDetection]", outputs: ["valueChanged"] }, { kind: "component", type: GlobalAssistanceComponent, selector: "smz-ui-global-assistance" }], encapsulation: i0.ViewEncapsulation.None });
39635
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: HephaestusAssistanceComponent, isStandalone: false, selector: "smz-ui-hephaestus-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear\"></i></a>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-start p-2\">\r\n <h5>Menu</h5>\r\n <div class=\"flex flex-wrap\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"w-5/12 flex-none mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"flex-1 mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-hephaestus-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-hephaestus-assistance .assistence_sidebar{width:35em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzDrawerComponent, selector: "ui-drawer", inputs: ["visible", "position", "fullScreen", "header", "modal", "dismissible", "closeOnEscape", "showCloseIcon", "style", "styleClass", "blockScroll", "ariaCloseLabel", "appendTo"], outputs: ["visibleChange", "shown", "hidden"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: InputChangeDetectionDirective, selector: "[appInputChangeDetection]", outputs: ["valueChanged"] }, { kind: "component", type: GlobalAssistanceComponent, selector: "smz-ui-global-assistance" }], encapsulation: i0.ViewEncapsulation.None });
39636
39636
  }
39637
39637
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: HephaestusAssistanceComponent, decorators: [{
39638
39638
  type: Component,
39639
- args: [{ selector: 'smz-ui-hephaestus-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear\"></i></a>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"grid flex-col items-start justify-start p-2 grid-nogutter\">\r\n <h5>Menu</h5>\r\n <div class=\"grid grid-nogutter\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"col-5 mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"col mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-hephaestus-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-hephaestus-assistance .assistence_sidebar{width:35em}\n"] }]
39639
+ args: [{ selector: 'smz-ui-hephaestus-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear\"></i></a>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-start p-2\">\r\n <h5>Menu</h5>\r\n <div class=\"flex flex-wrap\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"w-5/12 flex-none mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"flex-1 mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-hephaestus-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-hephaestus-assistance .assistence_sidebar{width:35em}\n"] }]
39640
39640
  }], ctorParameters: () => [] });
39641
39641
 
39642
39642
  /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return, @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type, @typescript-eslint/typedef, no-underscore-dangle, no-console, eqeqeq, @typescript-eslint/no-unused-vars, @typescript-eslint/no-useless-constructor, @typescript-eslint/explicit-member-accessibility, max-len, no-prototype-builtins, @typescript-eslint/no-shadow, @typescript-eslint/no-empty-object-type */
@@ -40542,7 +40542,7 @@ class AthenaProfileMenuComponent {
40542
40542
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AthenaProfileMenuComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
40543
40543
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaProfileMenuComponent, isStandalone: false, selector: "[smz-ui-athena-profile-menu]", inputs: { profile: "profile" }, host: { listeners: { "document:click": "collapse($event)" }, properties: { "class": "this.themeClass" } }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: `
40544
40544
  <!-- <ng-content></ng-content> -->
40545
- <a class="profile clickable grid items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
40545
+ <a class="profile clickable flex flex-wrap items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
40546
40546
  @if (userData$ | async; as userdata) {
40547
40547
  <span class="username">{{ uiConfig.layouts.profileMessage }}{{ userdata[uiConfig.layouts.usernameProperty] }}</span>
40548
40548
  @if (uiConfig.layouts.useAvatar && userdata[uiConfig.layouts.avatarProperty]) {
@@ -40571,7 +40571,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
40571
40571
  changeDetection: ChangeDetectionStrategy.OnPush,
40572
40572
  template: `
40573
40573
  <!-- <ng-content></ng-content> -->
40574
- <a class="profile clickable grid items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
40574
+ <a class="profile clickable flex flex-wrap items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
40575
40575
  @if (userData$ | async; as userdata) {
40576
40576
  <span class="username">{{ uiConfig.layouts.profileMessage }}{{ userdata[uiConfig.layouts.usernameProperty] }}</span>
40577
40577
  @if (uiConfig.layouts.useAvatar && userdata[uiConfig.layouts.avatarProperty]) {
@@ -40628,7 +40628,7 @@ class AthenaNotificationItemsComponent {
40628
40628
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaNotificationItemsComponent, isStandalone: false, selector: "[smz-ui-athena-notification-items]", inputs: { items: "items" }, outputs: { onClose: "onClose" }, host: { listeners: { "document:click": "collapse($event)" } }, ngImport: i0, template: `
40629
40629
  @for (item of items; track item; let index = $index) {
40630
40630
  <li role="menuitem">
40631
- <a menuItemAction class="grid grid-nogutter items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
40631
+ <a menuItemAction class="flex flex-wrap items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
40632
40632
  @if (item.icon != null) {
40633
40633
  <i class="fa-solid mr-3" [ngClass]="item.icon"></i>
40634
40634
  }
@@ -40646,7 +40646,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
40646
40646
  args: [{ selector: '[smz-ui-athena-notification-items]', host: { '(document:click)': 'collapse($event)' }, changeDetection: ChangeDetectionStrategy.OnPush, template: `
40647
40647
  @for (item of items; track item; let index = $index) {
40648
40648
  <li role="menuitem">
40649
- <a menuItemAction class="grid grid-nogutter items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
40649
+ <a menuItemAction class="flex flex-wrap items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
40650
40650
  @if (item.icon != null) {
40651
40651
  <i class="fa-solid mr-3" [ngClass]="item.icon"></i>
40652
40652
  }
@@ -41158,11 +41158,11 @@ class NotificationItemComponent {
41158
41158
  ngOnInit() {
41159
41159
  }
41160
41160
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NotificationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
41161
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NotificationItemComponent, isStandalone: false, selector: "smz-notification-item", inputs: { item: "item", charactersLimit: "charactersLimit", showDate: "showDate" }, ngImport: i0, template: "<div class=\"grid grid-nogutter flex-row flex-nowrap items-center justify-between relative flex-gap-1 py-2 pl-2 min-h-[90px]\" [ngClass]=\"uiConfig.rbkUtils.notifications.showTypeIndicators ? typeClass[item.type] : ''\">\r\n\r\n <div class=\"grid grid-nogutter flex-col items-stretch justify-start relative flex-gap-1\">\r\n <div class=\"grid grid-nogutter items-center justify-start mb-1\">\r\n <div class=\"font-medium\" [ngClass]=\"{ 'font-extrabold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{item.title}}</div>\r\n @if (item.status === status.NEW) {\r\n <div class=\"rounded bg-blue-500 text-white px-1 py-0.5 ml-2 text-xs\">NOVO</div>\r\n }\r\n </div>\r\n <div class=\"text-sm\" [ngClass]=\"{ 'font-bold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{ charactersLimit != null ? (item.body | shorten : charactersLimit : '...') : item.body}}</div>\r\n </div>\r\n\r\n @if (showDate) {\r\n <div>\r\n @if (uiConfig.rbkUtils.notifications.date; as date) {\r\n <span class=\"text-xs text-right whitespace-nowrap\">\r\n {{ item.date | calendar : date.recentsMethod : date.recentsDaysCount : date.othersFormat }}\r\n </span>\r\n }\r\n </div>\r\n }\r\n\r\n</div>\r\n", styles: ["smz-notification-item .success-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-success)}smz-notification-item .info-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-info)}smz-notification-item .warning-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-warning)}smz-notification-item .danger-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-danger)}smz-notification-item .help-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-help)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: CalendarPipe, name: "calendar" }, { kind: "pipe", type: ShortenPipe, name: "shorten" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
41161
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NotificationItemComponent, isStandalone: false, selector: "smz-notification-item", inputs: { item: "item", charactersLimit: "charactersLimit", showDate: "showDate" }, ngImport: i0, template: "<div class=\"flex flex-wrap flex-row flex-nowrap items-center justify-between relative py-2 pl-2 min-h-[90px] -m-1\" [ngClass]=\"uiConfig.rbkUtils.notifications.showTypeIndicators ? typeClass[item.type] : ''\">\r\n\r\n <div class=\"flex flex-wrap flex-col items-stretch justify-start relative p-1 -m-1\">\r\n <div class=\"flex flex-wrap items-center justify-start mb-1 p-1\">\r\n <div class=\"font-medium\" [ngClass]=\"{ 'font-extrabold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{item.title}}</div>\r\n @if (item.status === status.NEW) {\r\n <div class=\"rounded bg-blue-500 text-white px-1 py-0.5 ml-2 text-xs\">NOVO</div>\r\n }\r\n </div>\r\n <div class=\"text-sm p-1\" [ngClass]=\"{ 'font-bold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{ charactersLimit != null ? (item.body | shorten : charactersLimit : '...') : item.body}}</div>\r\n </div>\r\n\r\n @if (showDate) {\r\n <div class=\"p-1\">\r\n @if (uiConfig.rbkUtils.notifications.date; as date) {\r\n <span class=\"text-xs text-right whitespace-nowrap\">\r\n {{ item.date | calendar : date.recentsMethod : date.recentsDaysCount : date.othersFormat }}\r\n </span>\r\n }\r\n </div>\r\n }\r\n\r\n</div>\r\n", styles: ["smz-notification-item .success-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-success)}smz-notification-item .info-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-info)}smz-notification-item .warning-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-warning)}smz-notification-item .danger-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-danger)}smz-notification-item .help-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-help)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: CalendarPipe, name: "calendar" }, { kind: "pipe", type: ShortenPipe, name: "shorten" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
41162
41162
  }
41163
41163
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NotificationItemComponent, decorators: [{
41164
41164
  type: Component,
41165
- args: [{ selector: 'smz-notification-item', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<div class=\"grid grid-nogutter flex-row flex-nowrap items-center justify-between relative flex-gap-1 py-2 pl-2 min-h-[90px]\" [ngClass]=\"uiConfig.rbkUtils.notifications.showTypeIndicators ? typeClass[item.type] : ''\">\r\n\r\n <div class=\"grid grid-nogutter flex-col items-stretch justify-start relative flex-gap-1\">\r\n <div class=\"grid grid-nogutter items-center justify-start mb-1\">\r\n <div class=\"font-medium\" [ngClass]=\"{ 'font-extrabold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{item.title}}</div>\r\n @if (item.status === status.NEW) {\r\n <div class=\"rounded bg-blue-500 text-white px-1 py-0.5 ml-2 text-xs\">NOVO</div>\r\n }\r\n </div>\r\n <div class=\"text-sm\" [ngClass]=\"{ 'font-bold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{ charactersLimit != null ? (item.body | shorten : charactersLimit : '...') : item.body}}</div>\r\n </div>\r\n\r\n @if (showDate) {\r\n <div>\r\n @if (uiConfig.rbkUtils.notifications.date; as date) {\r\n <span class=\"text-xs text-right whitespace-nowrap\">\r\n {{ item.date | calendar : date.recentsMethod : date.recentsDaysCount : date.othersFormat }}\r\n </span>\r\n }\r\n </div>\r\n }\r\n\r\n</div>\r\n", styles: ["smz-notification-item .success-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-success)}smz-notification-item .info-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-info)}smz-notification-item .warning-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-warning)}smz-notification-item .danger-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-danger)}smz-notification-item .help-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-help)}\n"] }]
41165
+ args: [{ selector: 'smz-notification-item', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<div class=\"flex flex-wrap flex-row flex-nowrap items-center justify-between relative py-2 pl-2 min-h-[90px] -m-1\" [ngClass]=\"uiConfig.rbkUtils.notifications.showTypeIndicators ? typeClass[item.type] : ''\">\r\n\r\n <div class=\"flex flex-wrap flex-col items-stretch justify-start relative p-1 -m-1\">\r\n <div class=\"flex flex-wrap items-center justify-start mb-1 p-1\">\r\n <div class=\"font-medium\" [ngClass]=\"{ 'font-extrabold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{item.title}}</div>\r\n @if (item.status === status.NEW) {\r\n <div class=\"rounded bg-blue-500 text-white px-1 py-0.5 ml-2 text-xs\">NOVO</div>\r\n }\r\n </div>\r\n <div class=\"text-sm p-1\" [ngClass]=\"{ 'font-bold': item.status === status.NEW || item.status === status.NOTIFIED }\">{{ charactersLimit != null ? (item.body | shorten : charactersLimit : '...') : item.body}}</div>\r\n </div>\r\n\r\n @if (showDate) {\r\n <div class=\"p-1\">\r\n @if (uiConfig.rbkUtils.notifications.date; as date) {\r\n <span class=\"text-xs text-right whitespace-nowrap\">\r\n {{ item.date | calendar : date.recentsMethod : date.recentsDaysCount : date.othersFormat }}\r\n </span>\r\n }\r\n </div>\r\n }\r\n\r\n</div>\r\n", styles: ["smz-notification-item .success-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-success)}smz-notification-item .info-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-info)}smz-notification-item .warning-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-warning)}smz-notification-item .danger-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-danger)}smz-notification-item .help-type:before{content:\"\";position:absolute;top:5px;left:-5px;width:5px;bottom:5px;background-color:var(--color-help)}\n"] }]
41166
41166
  }], ctorParameters: () => [], propDecorators: { item: [{
41167
41167
  type: Input
41168
41168
  }], charactersLimit: [{
@@ -41249,7 +41249,7 @@ class NotificationsListComponent {
41249
41249
  .columns()
41250
41250
  .custom('searchData', '')
41251
41251
  .forceGlobalFilter()
41252
- .addStyles('col')
41252
+ .addStyles('flex-1')
41253
41253
  .disableFilter()
41254
41254
  .columns
41255
41255
  .table;
@@ -41317,7 +41317,7 @@ class NotificationsListComponent {
41317
41317
  }
41318
41318
  }
41319
41319
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NotificationsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
41320
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NotificationsListComponent, isStandalone: false, selector: "smz-notifications-list", ngImport: i0, template: "<ng-container *ngVar=\"hasRuningRequest$ | async as hasRuningRequest\">\r\n\r\n <smz-ui-table #smzTable [items]=\"(notifications$ | async) | filterBy : ['status'] : currentFolder.status\" [state]=\"tableState\" [loading]=\"hasRuningRequest\" (selectionChange)=\"onSelect($event)\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @if (uiConfig.rbkUtils.notifications.showRefreshButton) {\r\n <button smzButton smzRipple type=\"button\" icon=\"fa-solid fa-rotate\" smzTooltip=\"Atualizar\" class=\"mr-3\" (click)=\"refresh()\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n <ui-select-button appendTo=\"body\" [options]=\"folders\" [(ngModel)]=\"currentFolder\" optionLabel=\"icon\" (changed)=\"currentFolder.rebuild()\">\r\n <ng-template #item let-item>\r\n <i [ngClass]=\"item.icon\" [smzTooltip]=\"item.tooltip\"></i>\r\n <span class=\"ml-1 text-sm\">({{ item.count$ | async }})</span>\r\n </ng-template>\r\n </ui-select-button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('searchData') {\r\n <div class=\"grid grid-nogutter items-center justify-between\" (mouseenter)=\"item._showActions = true\" (mouseleave)=\"item._showActions = false\">\r\n <div class=\"col\">\r\n <smz-notification-item [item]=\"item\" [showDate]=\"true\"></smz-notification-item>\r\n </div>\r\n @if (item._showActions) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-4 flex-col pl-4 animate__animated animate__fadeIn relative\" clickStopPropagation>\r\n @if (item.status !== status.ARCHIVED) {\r\n <i #archiveButton smzTooltip=\"Arquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-box-archive p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"archive([item])\"></i>\r\n }\r\n @if (item.status === status.ARCHIVED) {\r\n <i #inboxButton smzTooltip=\"Desarquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-inbox p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"moveToInbox([item])\"></i>\r\n }\r\n @if (item.route != '') {\r\n <i #routeButton smzTooltip=\"Navegar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-share p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"navigate(item)\"></i>\r\n }\r\n @if (item.link != '') {\r\n <i #linkButton smzTooltip=\"Abrir Link\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-up-right-from-square p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"openLink(item)\"></i>\r\n }\r\n <i #trashButton smzTooltip=\"Excluir\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-trash p-button-rounded p-button-text p-button-plain relative text-gray-500\" styleClass=\"relative\" (click)=\"remove(item)\"></i>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>", styles: ["smz-notifications-list .database-title{font-size:1.2rem}smz-notifications-list i .p-tooltip .p-tooltip-text{word-break:normal}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "component", type: NotificationItemComponent, selector: "smz-notification-item", inputs: ["item", "charactersLimit", "showDate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: FilterByPipe, name: "filterBy" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
41320
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NotificationsListComponent, isStandalone: false, selector: "smz-notifications-list", ngImport: i0, template: "<ng-container *ngVar=\"hasRuningRequest$ | async as hasRuningRequest\">\r\n\r\n <smz-ui-table #smzTable [items]=\"(notifications$ | async) | filterBy : ['status'] : currentFolder.status\" [state]=\"tableState\" [loading]=\"hasRuningRequest\" (selectionChange)=\"onSelect($event)\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @if (uiConfig.rbkUtils.notifications.showRefreshButton) {\r\n <button smzButton smzRipple type=\"button\" icon=\"fa-solid fa-rotate\" smzTooltip=\"Atualizar\" class=\"mr-3\" (click)=\"refresh()\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n <ui-select-button appendTo=\"body\" [options]=\"folders\" [(ngModel)]=\"currentFolder\" optionLabel=\"icon\" (changed)=\"currentFolder.rebuild()\">\r\n <ng-template #item let-item>\r\n <i [ngClass]=\"item.icon\" [smzTooltip]=\"item.tooltip\"></i>\r\n <span class=\"ml-1 text-sm\">({{ item.count$ | async }})</span>\r\n </ng-template>\r\n </ui-select-button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('searchData') {\r\n <div class=\"flex flex-wrap items-center justify-between\" (mouseenter)=\"item._showActions = true\" (mouseleave)=\"item._showActions = false\">\r\n <div class=\"flex-1\">\r\n <smz-notification-item [item]=\"item\" [showDate]=\"true\"></smz-notification-item>\r\n </div>\r\n @if (item._showActions) {\r\n <div class=\"flex flex-wrap items-center justify-start flex-col pl-4 animate__animated animate__fadeIn relative gap-4\" clickStopPropagation>\r\n @if (item.status !== status.ARCHIVED) {\r\n <i #archiveButton smzTooltip=\"Arquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-box-archive p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"archive([item])\"></i>\r\n }\r\n @if (item.status === status.ARCHIVED) {\r\n <i #inboxButton smzTooltip=\"Desarquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-inbox p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"moveToInbox([item])\"></i>\r\n }\r\n @if (item.route != '') {\r\n <i #routeButton smzTooltip=\"Navegar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-share p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"navigate(item)\"></i>\r\n }\r\n @if (item.link != '') {\r\n <i #linkButton smzTooltip=\"Abrir Link\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-up-right-from-square p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"openLink(item)\"></i>\r\n }\r\n <i #trashButton smzTooltip=\"Excluir\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-trash p-button-rounded p-button-text p-button-plain relative text-gray-500\" styleClass=\"relative\" (click)=\"remove(item)\"></i>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>", styles: ["smz-notifications-list .database-title{font-size:1.2rem}smz-notifications-list i .p-tooltip .p-tooltip-text{word-break:normal}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: SmzTableComponent, selector: "smz-ui-table", inputs: ["state", "items", "loading"], outputs: ["selectionChange", "validChange", "filterChange", "columnVisibilityChange", "create", "update", "delete"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "component", type: NotificationItemComponent, selector: "smz-notification-item", inputs: ["item", "charactersLimit", "showDate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: FilterByPipe, name: "filterBy" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
41321
41321
  }
41322
41322
  __decorate([
41323
41323
  Confirmable('Deseja realmente excluir as notificações selecionadas ?<br>Está operação não poderá ser desfeita.', 'Exclusão', true)
@@ -41327,7 +41327,7 @@ __decorate([
41327
41327
  ], NotificationsListComponent.prototype, "remove", null);
41328
41328
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NotificationsListComponent, decorators: [{
41329
41329
  type: Component,
41330
- args: [{ selector: 'smz-notifications-list', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<ng-container *ngVar=\"hasRuningRequest$ | async as hasRuningRequest\">\r\n\r\n <smz-ui-table #smzTable [items]=\"(notifications$ | async) | filterBy : ['status'] : currentFolder.status\" [state]=\"tableState\" [loading]=\"hasRuningRequest\" (selectionChange)=\"onSelect($event)\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @if (uiConfig.rbkUtils.notifications.showRefreshButton) {\r\n <button smzButton smzRipple type=\"button\" icon=\"fa-solid fa-rotate\" smzTooltip=\"Atualizar\" class=\"mr-3\" (click)=\"refresh()\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n <ui-select-button appendTo=\"body\" [options]=\"folders\" [(ngModel)]=\"currentFolder\" optionLabel=\"icon\" (changed)=\"currentFolder.rebuild()\">\r\n <ng-template #item let-item>\r\n <i [ngClass]=\"item.icon\" [smzTooltip]=\"item.tooltip\"></i>\r\n <span class=\"ml-1 text-sm\">({{ item.count$ | async }})</span>\r\n </ng-template>\r\n </ui-select-button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('searchData') {\r\n <div class=\"grid grid-nogutter items-center justify-between\" (mouseenter)=\"item._showActions = true\" (mouseleave)=\"item._showActions = false\">\r\n <div class=\"col\">\r\n <smz-notification-item [item]=\"item\" [showDate]=\"true\"></smz-notification-item>\r\n </div>\r\n @if (item._showActions) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-4 flex-col pl-4 animate__animated animate__fadeIn relative\" clickStopPropagation>\r\n @if (item.status !== status.ARCHIVED) {\r\n <i #archiveButton smzTooltip=\"Arquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-box-archive p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"archive([item])\"></i>\r\n }\r\n @if (item.status === status.ARCHIVED) {\r\n <i #inboxButton smzTooltip=\"Desarquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-inbox p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"moveToInbox([item])\"></i>\r\n }\r\n @if (item.route != '') {\r\n <i #routeButton smzTooltip=\"Navegar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-share p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"navigate(item)\"></i>\r\n }\r\n @if (item.link != '') {\r\n <i #linkButton smzTooltip=\"Abrir Link\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-up-right-from-square p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"openLink(item)\"></i>\r\n }\r\n <i #trashButton smzTooltip=\"Excluir\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-trash p-button-rounded p-button-text p-button-plain relative text-gray-500\" styleClass=\"relative\" (click)=\"remove(item)\"></i>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>", styles: ["smz-notifications-list .database-title{font-size:1.2rem}smz-notifications-list i .p-tooltip .p-tooltip-text{word-break:normal}\n"] }]
41330
+ args: [{ selector: 'smz-notifications-list', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "<ng-container *ngVar=\"hasRuningRequest$ | async as hasRuningRequest\">\r\n\r\n <smz-ui-table #smzTable [items]=\"(notifications$ | async) | filterBy : ['status'] : currentFolder.status\" [state]=\"tableState\" [loading]=\"hasRuningRequest\" (selectionChange)=\"onSelect($event)\">\r\n\r\n <ng-template smzTemplate=\"caption\" let-primeTable>\r\n @if (uiConfig.rbkUtils.notifications.showRefreshButton) {\r\n <button smzButton smzRipple type=\"button\" icon=\"fa-solid fa-rotate\" smzTooltip=\"Atualizar\" class=\"mr-3\" (click)=\"refresh()\" [rounded]=\"true\" variant=\"text\" styleClass=\"p-button-plain\"></button>\r\n }\r\n <ui-select-button appendTo=\"body\" [options]=\"folders\" [(ngModel)]=\"currentFolder\" optionLabel=\"icon\" (changed)=\"currentFolder.rebuild()\">\r\n <ng-template #item let-item>\r\n <i [ngClass]=\"item.icon\" [smzTooltip]=\"item.tooltip\"></i>\r\n <span class=\"ml-1 text-sm\">({{ item.count$ | async }})</span>\r\n </ng-template>\r\n </ui-select-button>\r\n </ng-template>\r\n\r\n <!-- CONTE\u00DADOS COM OVERRIDE -->\r\n <ng-template smzTemplate=\"content\" let-item let-col=\"col\">\r\n\r\n @switch (col.field) {\r\n @case ('searchData') {\r\n <div class=\"flex flex-wrap items-center justify-between\" (mouseenter)=\"item._showActions = true\" (mouseleave)=\"item._showActions = false\">\r\n <div class=\"flex-1\">\r\n <smz-notification-item [item]=\"item\" [showDate]=\"true\"></smz-notification-item>\r\n </div>\r\n @if (item._showActions) {\r\n <div class=\"flex flex-wrap items-center justify-start flex-col pl-4 animate__animated animate__fadeIn relative gap-4\" clickStopPropagation>\r\n @if (item.status !== status.ARCHIVED) {\r\n <i #archiveButton smzTooltip=\"Arquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-box-archive p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"archive([item])\"></i>\r\n }\r\n @if (item.status === status.ARCHIVED) {\r\n <i #inboxButton smzTooltip=\"Desarquivar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-inbox p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"moveToInbox([item])\"></i>\r\n }\r\n @if (item.route != '') {\r\n <i #routeButton smzTooltip=\"Navegar\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-share p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"navigate(item)\"></i>\r\n }\r\n @if (item.link != '') {\r\n <i #linkButton smzTooltip=\"Abrir Link\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-up-right-from-square p-button-rounded p-button-text p-button-plain relative text-gray-500\" (click)=\"openLink(item)\"></i>\r\n }\r\n <i #trashButton smzTooltip=\"Excluir\" appendTo=\"body\" tooltipZIndex=\"9999\" tooltipPosition=\"bottom\" class=\"fa-solid fa-trash p-button-rounded p-button-text p-button-plain relative text-gray-500\" styleClass=\"relative\" (click)=\"remove(item)\"></i>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n\r\n </ng-template>\r\n\r\n </smz-ui-table>\r\n\r\n</ng-container>", styles: ["smz-notifications-list .database-title{font-size:1.2rem}smz-notifications-list i .p-tooltip .p-tooltip-text{word-break:normal}\n"] }]
41331
41331
  }], ctorParameters: () => [], propDecorators: { batchRemove: [], remove: [] } });
41332
41332
 
41333
41333
  function showNotificationsDialog() {
@@ -41360,11 +41360,11 @@ class SmzNotificationsComponent {
41360
41360
  showNotificationsDialog();
41361
41361
  }
41362
41362
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzNotificationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
41363
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzNotificationsComponent, isStandalone: false, selector: "smz-ui-notifications", ngImport: i0, template: "@if (notifications$ | async; as notifications) {\r\n <smz-responsive class=\"col grid grid-nogutter w-full items-center justify-start\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"op.toggle($event)\"></div>\r\n </i>\r\n <ui-popover #op [style]=\"{ 'width': uiConfig.rbkUtils.notifications.width, 'z-index': uiConfig.rbkUtils.notifications.zIndex }\" [styleClass]=\"uiConfig.rbkUtils.notifications.styleClass\" appendTo=\"body\" [autoZIndex]=\"false\">\r\n <smz-notifications-list></smz-notifications-list>\r\n </ui-popover>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"showDialog()\"></div>\r\n </i>\r\n </ng-template>\r\n </smz-responsive>\r\n}", styles: ["smz-ui-notifications .notification-container{min-width:40px}smz-ui-notifications .badge-color{color:var(--text-color-secondary)}smz-ui-notifications .p-badge{background:var(--surface-a);color:var(--primary-color)}smz-ui-notifications .regular-badge{font-size:1.6rem;line-height:1.6rem}smz-ui-notifications .regular-badge .p-badge{font-size:.8rem;font-weight:700;min-width:1.1rem;height:1.1rem;line-height:1.1rem}\n"], dependencies: [{ kind: "directive", type: i2.SmzBadgeDirective, selector: "[smzBadge]", inputs: ["value", "severity"] }, { kind: "component", type: i2.SmzPopoverComponent, selector: "ui-popover", inputs: ["style", "styleClass", "dismissable", "autoZIndex", "appendTo"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzResponsiveComponent, selector: "smz-responsive" }, { kind: "component", type: NotificationsListComponent, selector: "smz-notifications-list" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
41363
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzNotificationsComponent, isStandalone: false, selector: "smz-ui-notifications", ngImport: i0, template: "@if (notifications$ | async; as notifications) {\r\n <smz-responsive class=\"flex-1 basis-0 flex flex-wrap w-full items-center justify-start p-2\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"op.toggle($event)\"></div>\r\n </i>\r\n <ui-popover #op [style]=\"{ 'width': uiConfig.rbkUtils.notifications.width, 'z-index': uiConfig.rbkUtils.notifications.zIndex }\" [styleClass]=\"uiConfig.rbkUtils.notifications.styleClass\" appendTo=\"body\" [autoZIndex]=\"false\">\r\n <smz-notifications-list></smz-notifications-list>\r\n </ui-popover>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"showDialog()\"></div>\r\n </i>\r\n </ng-template>\r\n </smz-responsive>\r\n}", styles: ["smz-ui-notifications .notification-container{min-width:40px}smz-ui-notifications .badge-color{color:var(--text-color-secondary)}smz-ui-notifications .p-badge{background:var(--surface-a);color:var(--primary-color)}smz-ui-notifications .regular-badge{font-size:1.6rem;line-height:1.6rem}smz-ui-notifications .regular-badge .p-badge{font-size:.8rem;font-weight:700;min-width:1.1rem;height:1.1rem;line-height:1.1rem}\n"], dependencies: [{ kind: "directive", type: i2.SmzBadgeDirective, selector: "[smzBadge]", inputs: ["value", "severity"] }, { kind: "component", type: i2.SmzPopoverComponent, selector: "ui-popover", inputs: ["style", "styleClass", "dismissable", "autoZIndex", "appendTo"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzResponsiveComponent, selector: "smz-responsive" }, { kind: "component", type: NotificationsListComponent, selector: "smz-notifications-list" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
41364
41364
  }
41365
41365
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzNotificationsComponent, decorators: [{
41366
41366
  type: Component,
41367
- args: [{ selector: 'smz-ui-notifications', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (notifications$ | async; as notifications) {\r\n <smz-responsive class=\"col grid grid-nogutter w-full items-center justify-start\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"op.toggle($event)\"></div>\r\n </i>\r\n <ui-popover #op [style]=\"{ 'width': uiConfig.rbkUtils.notifications.width, 'z-index': uiConfig.rbkUtils.notifications.zIndex }\" [styleClass]=\"uiConfig.rbkUtils.notifications.styleClass\" appendTo=\"body\" [autoZIndex]=\"false\">\r\n <smz-notifications-list></smz-notifications-list>\r\n </ui-popover>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"showDialog()\"></div>\r\n </i>\r\n </ng-template>\r\n </smz-responsive>\r\n}", styles: ["smz-ui-notifications .notification-container{min-width:40px}smz-ui-notifications .badge-color{color:var(--text-color-secondary)}smz-ui-notifications .p-badge{background:var(--surface-a);color:var(--primary-color)}smz-ui-notifications .regular-badge{font-size:1.6rem;line-height:1.6rem}smz-ui-notifications .regular-badge .p-badge{font-size:.8rem;font-weight:700;min-width:1.1rem;height:1.1rem;line-height:1.1rem}\n"] }]
41367
+ args: [{ selector: 'smz-ui-notifications', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (notifications$ | async; as notifications) {\r\n <smz-responsive class=\"flex-1 basis-0 flex flex-wrap w-full items-center justify-start p-2\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"op.toggle($event)\"></div>\r\n </i>\r\n <ui-popover #op [style]=\"{ 'width': uiConfig.rbkUtils.notifications.width, 'z-index': uiConfig.rbkUtils.notifications.zIndex }\" [styleClass]=\"uiConfig.rbkUtils.notifications.styleClass\" appendTo=\"body\" [autoZIndex]=\"false\">\r\n <smz-notifications-list></smz-notifications-list>\r\n </ui-popover>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <i class=\"fa-solid fa-bell badge-color regular-badge\" smzBadge [value]=\"(newCount$ | async).toString()\">\r\n <div class=\"absolute inset-0 notification-container cursor-pointer\" (click)=\"showDialog()\"></div>\r\n </i>\r\n </ng-template>\r\n </smz-responsive>\r\n}", styles: ["smz-ui-notifications .notification-container{min-width:40px}smz-ui-notifications .badge-color{color:var(--text-color-secondary)}smz-ui-notifications .p-badge{background:var(--surface-a);color:var(--primary-color)}smz-ui-notifications .regular-badge{font-size:1.6rem;line-height:1.6rem}smz-ui-notifications .regular-badge .p-badge{font-size:.8rem;font-weight:700;min-width:1.1rem;height:1.1rem;line-height:1.1rem}\n"] }]
41368
41368
  }], ctorParameters: () => [] });
41369
41369
 
41370
41370
  /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return, @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type, @typescript-eslint/typedef, no-underscore-dangle, no-console, eqeqeq, @typescript-eslint/no-unused-vars, @typescript-eslint/no-useless-constructor, @typescript-eslint/explicit-member-accessibility, max-len, no-prototype-builtins, @typescript-eslint/no-shadow, @typescript-eslint/no-empty-object-type */
@@ -41381,7 +41381,7 @@ let AthenaTopbarActionsComponent$1 = class AthenaTopbarActionsComponent {
41381
41381
 
41382
41382
  <div id="smz-ui-topbar"></div>
41383
41383
 
41384
- <span class="col extras-container justify-end extras-container mr-3">
41384
+ <span class="flex-1 basis-0 extras-container justify-end mr-3 p-2">
41385
41385
  @if (headerExtrasTemplate != null) {
41386
41386
  <ng-container *ngTemplateOutlet="headerExtrasTemplate"></ng-container>
41387
41387
  }
@@ -41417,7 +41417,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
41417
41417
 
41418
41418
  <div id="smz-ui-topbar"></div>
41419
41419
 
41420
- <span class="col extras-container justify-end extras-container mr-3">
41420
+ <span class="flex-1 basis-0 extras-container justify-end mr-3 p-2">
41421
41421
  @if (headerExtrasTemplate != null) {
41422
41422
  <ng-container *ngTemplateOutlet="headerExtrasTemplate"></ng-container>
41423
41423
  }
@@ -41487,11 +41487,11 @@ class AthenaTopbarComponent {
41487
41487
  this.store.dispatch(new UiAthenaActions$1.ToggleSidebar);
41488
41488
  }
41489
41489
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AthenaTopbarComponent, deps: [{ token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
41490
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaTopbarComponent, isStandalone: false, selector: "smz-ui-athena-topbar", inputs: { notifications: "notifications", profile: "profile" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (layout$ | async; as layout) {\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-start flex-nowrap\" smz-ui-athena-topbar-actions [headerExtrasTemplate]=\"headerExtrasTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo col\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\" [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n style=\"outline: none; cursor: pointer;\" tabindex=\"0\">\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n <!-- <a *ngIf=\"layout.menu === horizontalMenuType\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left text-red\"></i>\r\n </a> -->\r\n </div>\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: AthenaTopbarActionsComponent$1, selector: "[smz-ui-athena-topbar-actions]", inputs: ["profile", "notifications", "headerExtrasTemplate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41490
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaTopbarComponent, isStandalone: false, selector: "smz-ui-athena-topbar", inputs: { notifications: "notifications", profile: "profile" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (layout$ | async; as layout) {\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-start flex-nowrap\" smz-ui-athena-topbar-actions [headerExtrasTemplate]=\"headerExtrasTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo flex-1\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\" [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n style=\"outline: none; cursor: pointer;\" tabindex=\"0\">\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n <!-- <a *ngIf=\"layout.menu === horizontalMenuType\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left text-red\"></i>\r\n </a> -->\r\n </div>\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: AthenaTopbarActionsComponent$1, selector: "[smz-ui-athena-topbar-actions]", inputs: ["profile", "notifications", "headerExtrasTemplate"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41491
41491
  }
41492
41492
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AthenaTopbarComponent, decorators: [{
41493
41493
  type: Component,
41494
- args: [{ selector: 'smz-ui-athena-topbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (layout$ | async; as layout) {\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-start flex-nowrap\" smz-ui-athena-topbar-actions [headerExtrasTemplate]=\"headerExtrasTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo col\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\" [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n style=\"outline: none; cursor: pointer;\" tabindex=\"0\">\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n <!-- <a *ngIf=\"layout.menu === horizontalMenuType\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left text-red\"></i>\r\n </a> -->\r\n </div>\r\n </div>\r\n}" }]
41494
+ args: [{ selector: 'smz-ui-athena-topbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (layout$ | async; as layout) {\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-start flex-nowrap\" smz-ui-athena-topbar-actions [headerExtrasTemplate]=\"headerExtrasTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo flex-1\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\" [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n style=\"outline: none; cursor: pointer;\" tabindex=\"0\">\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n <!-- <a *ngIf=\"layout.menu === horizontalMenuType\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left text-red\"></i>\r\n </a> -->\r\n </div>\r\n </div>\r\n}" }]
41495
41495
  }], ctorParameters: () => [{ type: i1$3.Store }], propDecorators: { templates: [{
41496
41496
  type: ContentChildren,
41497
41497
  args: [SmzTemplateDirective]
@@ -41533,11 +41533,11 @@ class AthenaFooterComponent {
41533
41533
  this.store.dispatch(new UiAthenaActions$1.ToggleSidebar);
41534
41534
  }
41535
41535
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AthenaFooterComponent, deps: [{ token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
41536
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaFooterComponent, isStandalone: false, selector: "smz-ui-athena-footer", host: { classAttribute: "z-10" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container col\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright col ml-2 mr-2 hide-mobile\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
41536
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaFooterComponent, isStandalone: false, selector: "smz-ui-athena-footer", host: { classAttribute: "z-10" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container flex-1 basis-0 p-2\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright flex-1 basis-0 ml-2 mr-2 hide-mobile p-2\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
41537
41537
  }
41538
41538
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AthenaFooterComponent, decorators: [{
41539
41539
  type: Component,
41540
- args: [{ selector: 'smz-ui-athena-footer', host: { 'class': 'z-10' }, standalone: false, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container col\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright col ml-2 mr-2 hide-mobile\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}" }]
41540
+ args: [{ selector: 'smz-ui-athena-footer', host: { 'class': 'z-10' }, standalone: false, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\">\r\n <div class=\"footer-logo-container flex-1 basis-0 p-2\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright flex-1 basis-0 ml-2 mr-2 hide-mobile p-2\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}" }]
41541
41541
  }], ctorParameters: () => [{ type: i1$3.Store }], propDecorators: { templates: [{
41542
41542
  type: ContentChildren,
41543
41543
  args: [SmzTemplateDirective]
@@ -41607,11 +41607,11 @@ class AthenaAssistanceComponent {
41607
41607
  this.store.dispatch(new LayoutUiActions.ShowConfigAssistance);
41608
41608
  }
41609
41609
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AthenaAssistanceComponent, deps: [{ token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
41610
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaAssistanceComponent, isStandalone: false, selector: "smz-ui-athena-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"grid flex-col items-start justify-start p-2 grid-nogutter\">\r\n <h5>Menu</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"col-5 mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"col mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-athena-assistance .assistence_sidebar{width:35em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzDrawerComponent, selector: "ui-drawer", inputs: ["visible", "position", "fullScreen", "header", "modal", "dismissible", "closeOnEscape", "showCloseIcon", "style", "styleClass", "blockScroll", "ariaCloseLabel", "appendTo"], outputs: ["visibleChange", "shown", "hidden"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: InputChangeDetectionDirective, selector: "[appInputChangeDetection]", outputs: ["valueChanged"] }, { kind: "component", type: GlobalAssistanceComponent, selector: "smz-ui-global-assistance" }], encapsulation: i0.ViewEncapsulation.None });
41610
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: AthenaAssistanceComponent, isStandalone: false, selector: "smz-ui-athena-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-start p-2\">\r\n <h5>Menu</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"w-5/12 flex-none mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"flex-1 mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-athena-assistance .assistence_sidebar{width:35em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzDrawerComponent, selector: "ui-drawer", inputs: ["visible", "position", "fullScreen", "header", "modal", "dismissible", "closeOnEscape", "showCloseIcon", "style", "styleClass", "blockScroll", "ariaCloseLabel", "appendTo"], outputs: ["visibleChange", "shown", "hidden"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: InputChangeDetectionDirective, selector: "[appInputChangeDetection]", outputs: ["valueChanged"] }, { kind: "component", type: GlobalAssistanceComponent, selector: "smz-ui-global-assistance" }], encapsulation: i0.ViewEncapsulation.None });
41611
41611
  }
41612
41612
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AthenaAssistanceComponent, decorators: [{
41613
41613
  type: Component,
41614
- args: [{ selector: 'smz-ui-athena-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"grid flex-col items-start justify-start p-2 grid-nogutter\">\r\n <h5>Menu</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"col-5 mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"col mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-athena-assistance .assistence_sidebar{width:35em}\n"] }]
41614
+ args: [{ selector: 'smz-ui-athena-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-start p-2\">\r\n <h5>Menu</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"w-5/12 flex-none mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"flex-1 mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-athena-assistance .assistence_sidebar{width:35em}\n"] }]
41615
41615
  }], ctorParameters: () => [{ type: i1$3.Store }] });
41616
41616
 
41617
41617
  /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return, @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type, @typescript-eslint/typedef, no-underscore-dangle, no-console, eqeqeq, @typescript-eslint/no-unused-vars, @typescript-eslint/no-useless-constructor, @typescript-eslint/explicit-member-accessibility, max-len, no-prototype-builtins, @typescript-eslint/no-shadow, @typescript-eslint/no-empty-object-type */
@@ -42655,7 +42655,7 @@ class NewAthenaProfileMenuComponent {
42655
42655
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NewAthenaProfileMenuComponent, deps: [{ token: i0.ElementRef }, { token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
42656
42656
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaProfileMenuComponent, isStandalone: false, selector: "[smz-ui-new-athena-profile-menu]", inputs: { profile: "profile" }, host: { listeners: { "document:click": "collapse($event)" }, properties: { "class": "this.themeClass" } }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: `
42657
42657
  <!-- <ng-content></ng-content> -->
42658
- <a class="profile clickable grid items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
42658
+ <a class="profile clickable flex flex-wrap items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
42659
42659
  @if (userData$ | async; as userdata) {
42660
42660
  <span class="username">{{ uiConfig.layouts.profileMessage }}{{ userdata[uiConfig.layouts.usernameProperty] }}</span>
42661
42661
  @if (uiConfig.layouts.useAvatar && userdata[uiConfig.layouts.avatarProperty]) {
@@ -42688,7 +42688,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
42688
42688
  changeDetection: ChangeDetectionStrategy.OnPush,
42689
42689
  template: `
42690
42690
  <!-- <ng-content></ng-content> -->
42691
- <a class="profile clickable grid items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
42691
+ <a class="profile clickable flex flex-wrap items-center justify-end m-0 p-0 flex-nowrap gap-2" [ngClass]="{ 'profile-with-icon': !uiConfig.layouts.useAvatar }" (click)="toggle()">
42692
42692
  @if (userData$ | async; as userdata) {
42693
42693
  <span class="username">{{ uiConfig.layouts.profileMessage }}{{ userdata[uiConfig.layouts.usernameProperty] }}</span>
42694
42694
  @if (uiConfig.layouts.useAvatar && userdata[uiConfig.layouts.avatarProperty]) {
@@ -42749,7 +42749,7 @@ class NewAthenaNotificationItemsComponent {
42749
42749
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaNotificationItemsComponent, isStandalone: false, selector: "[smz-ui-new-athena-notification-items]", inputs: { items: "items" }, outputs: { onClose: "onClose" }, host: { listeners: { "document:click": "collapse($event)" } }, ngImport: i0, template: `
42750
42750
  @for (item of items; track item; let index = $index) {
42751
42751
  <li role="menuitem">
42752
- <a menuItemAction class="grid grid-nogutter items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
42752
+ <a menuItemAction class="flex flex-wrap items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
42753
42753
  @if (item.icon != null) {
42754
42754
  <i class="fa-solid mr-3" [ngClass]="item.icon"></i>
42755
42755
  }
@@ -42767,7 +42767,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
42767
42767
  args: [{ selector: '[smz-ui-new-athena-notification-items]', host: { '(document:click)': 'collapse($event)' }, changeDetection: ChangeDetectionStrategy.OnPush, template: `
42768
42768
  @for (item of items; track item; let index = $index) {
42769
42769
  <li role="menuitem">
42770
- <a menuItemAction class="grid grid-nogutter items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
42770
+ <a menuItemAction class="flex flex-wrap items-center justify-start" style="display: flex;" [item]="item" [parent]="null" [breadcrumbs]="false" [tabindex]="index">
42771
42771
  @if (item.icon != null) {
42772
42772
  <i class="fa-solid mr-3" [ngClass]="item.icon"></i>
42773
42773
  }
@@ -42856,12 +42856,12 @@ class AthenaTopbarActionsComponent {
42856
42856
 
42857
42857
  <div id="smz-ui-topbar"></div>
42858
42858
 
42859
- <smz-responsive class="col grid grid-nogutter w-full items-center justify-start gap-5">
42859
+ <smz-responsive class="flex-1 basis-0 flex flex-wrap w-full items-center justify-start gap-5 p-2">
42860
42860
 
42861
42861
  <!-- LANDSCAPE -->
42862
42862
  <ng-template smzTemplate="landscape">
42863
42863
 
42864
- <span class="col extras-container justify-end extras-container">
42864
+ <span class="flex-1 basis-0 extras-container justify-end p-2">
42865
42865
  @if (headerExtrasTemplate != null) {
42866
42866
  <ng-container *ngTemplateOutlet="headerExtrasTemplate"></ng-container>
42867
42867
  }
@@ -42893,7 +42893,7 @@ class AthenaTopbarActionsComponent {
42893
42893
  <!-- PORTRAIT -->
42894
42894
  <ng-template smzTemplate="portrait">
42895
42895
 
42896
- <span class="col extras-container justify-end extras-container">
42896
+ <span class="flex-1 basis-0 extras-container justify-end p-2">
42897
42897
  @if (headerExtrasTemplate != null) {
42898
42898
  <ng-container *ngTemplateOutlet="headerExtrasTemplate"></ng-container>
42899
42899
  }
@@ -42929,12 +42929,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
42929
42929
 
42930
42930
  <div id="smz-ui-topbar"></div>
42931
42931
 
42932
- <smz-responsive class="col grid grid-nogutter w-full items-center justify-start gap-5">
42932
+ <smz-responsive class="flex-1 basis-0 flex flex-wrap w-full items-center justify-start gap-5 p-2">
42933
42933
 
42934
42934
  <!-- LANDSCAPE -->
42935
42935
  <ng-template smzTemplate="landscape">
42936
42936
 
42937
- <span class="col extras-container justify-end extras-container">
42937
+ <span class="flex-1 basis-0 extras-container justify-end p-2">
42938
42938
  @if (headerExtrasTemplate != null) {
42939
42939
  <ng-container *ngTemplateOutlet="headerExtrasTemplate"></ng-container>
42940
42940
  }
@@ -42966,7 +42966,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
42966
42966
  <!-- PORTRAIT -->
42967
42967
  <ng-template smzTemplate="portrait">
42968
42968
 
42969
- <span class="col extras-container justify-end extras-container">
42969
+ <span class="flex-1 basis-0 extras-container justify-end p-2">
42970
42970
  @if (headerExtrasTemplate != null) {
42971
42971
  <ng-container *ngTemplateOutlet="headerExtrasTemplate"></ng-container>
42972
42972
  }
@@ -43040,11 +43040,11 @@ class NewAthenaTopbarComponent {
43040
43040
  this.store.dispatch(new UiAthenaActions.ToggleSidebar);
43041
43041
  }
43042
43042
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NewAthenaTopbarComponent, deps: [{ token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
43043
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaTopbarComponent, isStandalone: false, selector: "smz-ui-new-athena-topbar", inputs: { notifications: "notifications", profile: "profile" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (layout$ | async; as layout) {\r\n <smz-responsive class=\"grid grid-nogutter w-full items-center justify-start\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerLandscapeTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n class=\"cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerPortraitTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo max-w-[100px]\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n class=\"w-full h-full cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n </smz-responsive>\r\n }", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: AthenaTopbarActionsComponent, selector: "[smz-ui-new-athena-topbar-actions]", inputs: ["profile", "notifications", "headerExtrasTemplate"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzResponsiveComponent, selector: "smz-responsive" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.Eager });
43043
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaTopbarComponent, isStandalone: false, selector: "smz-ui-new-athena-topbar", inputs: { notifications: "notifications", profile: "profile" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (layout$ | async; as layout) {\r\n <smz-responsive class=\"flex flex-wrap w-full items-center justify-start\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerLandscapeTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n class=\"cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerPortraitTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo max-w-[100px]\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n class=\"w-full h-full cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n </smz-responsive>\r\n }", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$5.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: AthenaTopbarActionsComponent, selector: "[smz-ui-new-athena-topbar-actions]", inputs: ["profile", "notifications", "headerExtrasTemplate"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzResponsiveComponent, selector: "smz-responsive" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.Eager });
43044
43044
  }
43045
43045
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NewAthenaTopbarComponent, decorators: [{
43046
43046
  type: Component,
43047
- args: [{ selector: 'smz-ui-new-athena-topbar', changeDetection: ChangeDetectionStrategy.Default, standalone: false, template: "@if (layout$ | async; as layout) {\r\n <smz-responsive class=\"grid grid-nogutter w-full items-center justify-start\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerLandscapeTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n class=\"cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerPortraitTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo max-w-[100px]\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n class=\"w-full h-full cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n </smz-responsive>\r\n }" }]
43047
+ args: [{ selector: 'smz-ui-new-athena-topbar', changeDetection: ChangeDetectionStrategy.Default, standalone: false, template: "@if (layout$ | async; as layout) {\r\n <smz-responsive class=\"flex flex-wrap w-full items-center justify-start\">\r\n <!-- LANDSCAPE -->\r\n <ng-template smzTemplate=\"landscape\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerLandscapeTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n [ngClass]=\"{ 'logo': !layout.enlargeTopbarLogo, 'enlarged-logo': layout.enlargeTopbarLogo }\"\r\n class=\"cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n <!-- PORTRAIT -->\r\n <ng-template smzTemplate=\"portrait\">\r\n <div class=\"topbar clearfix\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-start flex-nowrap\" smz-ui-new-athena-topbar-actions [headerExtrasTemplate]=\"headerPortraitTemplate\" [profile]=\"profile\" [notifications]=\"notifications\">\r\n <a class=\"topbar-logo max-w-[100px]\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n <img routerlink=\"/\" [src]=\"appLogo.horizontal\" [routerLink]=\"uiConfig.rbkUtils.authentication.authenticatedRoot\"\r\n class=\"w-full h-full cursor-pointer outline-none\" tabindex=\"0\"\r\n >\r\n }\r\n </a>\r\n @if (!layout.hideResponsiveMenuButton) {\r\n <a id=\"menu-button\" class=\"clickable\" (click)=\"toggle()\">\r\n <i class=\"fa-solid fa-align-left\"></i>\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n </ng-template>\r\n </smz-responsive>\r\n }" }]
43048
43048
  }], ctorParameters: () => [{ type: i1$3.Store }], propDecorators: { templates: [{
43049
43049
  type: ContentChildren,
43050
43050
  args: [SmzTemplateDirective]
@@ -43086,11 +43086,11 @@ class NewAthenaFooterComponent {
43086
43086
  this.store.dispatch(new UiAthenaActions.ToggleSidebar);
43087
43087
  }
43088
43088
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NewAthenaFooterComponent, deps: [{ token: i1$3.Store }], target: i0.ɵɵFactoryTarget.Component });
43089
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaFooterComponent, isStandalone: false, selector: "smz-ui-new-athena-footer", host: { classAttribute: "z-10" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\" id=\"footer-container\">\r\n <div class=\"footer-logo-container col\" id=\"footer-logo-container\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright col ml-2 mr-2 hide-mobile\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
43089
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaFooterComponent, isStandalone: false, selector: "smz-ui-new-athena-footer", host: { classAttribute: "z-10" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\" id=\"footer-container\">\r\n <div class=\"footer-logo-container flex-1 basis-0 p-2\" id=\"footer-logo-container\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright flex-1 basis-0 ml-2 mr-2 hide-mobile p-2\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
43090
43090
  }
43091
43091
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NewAthenaFooterComponent, decorators: [{
43092
43092
  type: Component,
43093
- args: [{ selector: 'smz-ui-new-athena-footer', host: { 'class': 'z-10' }, standalone: false, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\" id=\"footer-container\">\r\n <div class=\"footer-logo-container col\" id=\"footer-logo-container\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright col ml-2 mr-2 hide-mobile\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}" }]
43093
+ args: [{ selector: 'smz-ui-new-athena-footer', host: { 'class': 'z-10' }, standalone: false, template: "@if (state$ | async; as state) {\r\n <div class=\"layout-footer\" id=\"footer-container\">\r\n <div class=\"footer-logo-container flex-1 basis-0 p-2\" id=\"footer-logo-container\">\r\n @if ((appLogo$ | async); as appLogo) {\r\n @if (uiConfig.layouts.footer.showLogo) {\r\n <img id=\"footer-logo\" alt=\"athenas-layout\" [src]=\"appLogo.icon\">\r\n }\r\n @if (uiConfig.layouts.footer.showAppName) {\r\n <span class=\"app-name\">{{ state.appName }}</span>\r\n }\r\n }\r\n <span class=\"copyright flex-1 basis-0 ml-2 mr-2 hide-mobile p-2\">{{ uiConfig.layouts.footer.leftSideText }}</span>\r\n </div>\r\n <span class=\"copyright ml-2 hide-mobile\">{{ uiConfig.layouts.footer.rightSideText }}</span>\r\n <div class=\"copyright ml-2\">\r\n <ng-container *ngTemplateOutlet=\"footerExtrasTemplate\"></ng-container>\r\n </div>\r\n @if (uiConfig.layouts.footer.rightSideImages != null) {\r\n @for (image of uiConfig.layouts.footer.rightSideImages; track image) {\r\n <img [src]=\"image\" class=\"h-full ml-4 pb-2 pt-2 hide-mobile\" [ngClass]=\"uiConfig.layouts.footer.rightSideImageStyleClass ?? 'max-w-24'\">\r\n }\r\n }\r\n </div>\r\n}" }]
43094
43094
  }], ctorParameters: () => [{ type: i1$3.Store }], propDecorators: { templates: [{
43095
43095
  type: ContentChildren,
43096
43096
  args: [SmzTemplateDirective]
@@ -43157,11 +43157,11 @@ class NewAthenaAssistanceComponent {
43157
43157
  this.store.dispatch(new LayoutUiActions.ShowConfigAssistance);
43158
43158
  }
43159
43159
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NewAthenaAssistanceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
43160
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaAssistanceComponent, isStandalone: false, selector: "smz-ui-new-athena-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"grid flex-col items-start justify-start p-2 grid-nogutter\">\r\n <h5>Menu</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"col-5 mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"col mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-new-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-new-athena-assistance .assistence_sidebar{width:35em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzDrawerComponent, selector: "ui-drawer", inputs: ["visible", "position", "fullScreen", "header", "modal", "dismissible", "closeOnEscape", "showCloseIcon", "style", "styleClass", "blockScroll", "ariaCloseLabel", "appendTo"], outputs: ["visibleChange", "shown", "hidden"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: InputChangeDetectionDirective, selector: "[appInputChangeDetection]", outputs: ["valueChanged"] }, { kind: "component", type: GlobalAssistanceComponent, selector: "smz-ui-global-assistance" }], encapsulation: i0.ViewEncapsulation.None });
43160
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: NewAthenaAssistanceComponent, isStandalone: false, selector: "smz-ui-new-athena-assistance", ngImport: i0, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-start p-2\">\r\n <h5>Menu</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"w-5/12 flex-none mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"flex-1 mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-new-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-new-athena-assistance .assistence_sidebar{width:35em}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.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$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.SmzDrawerComponent, selector: "ui-drawer", inputs: ["visible", "position", "fullScreen", "header", "modal", "dismissible", "closeOnEscape", "showCloseIcon", "style", "styleClass", "blockScroll", "ariaCloseLabel", "appendTo"], outputs: ["visibleChange", "shown", "hidden"] }, { kind: "component", type: i2.SmzSelectButtonComponent, selector: "ui-select-button", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "multiple", "allowEmpty", "size", "styleClass", "appendTo"], outputs: ["changed"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "directive", type: InputChangeDetectionDirective, selector: "[appInputChangeDetection]", outputs: ["valueChanged"] }, { kind: "component", type: GlobalAssistanceComponent, selector: "smz-ui-global-assistance" }], encapsulation: i0.ViewEncapsulation.None });
43161
43161
  }
43162
43162
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: NewAthenaAssistanceComponent, decorators: [{
43163
43163
  type: Component,
43164
- args: [{ selector: 'smz-ui-new-athena-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"grid flex-col items-start justify-start p-2 grid-nogutter\">\r\n <h5>Menu</h5>\r\n <div class=\"grid grid-nogutter gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"col-5 mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"col mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-new-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-new-athena-assistance .assistence_sidebar{width:35em}\n"] }]
43164
+ args: [{ selector: 'smz-ui-new-athena-assistance', encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (assistance(); as assistance) {\r\n @if (assistance.isEnabled) {\r\n <div class=\"layout-config\">\r\n <a id=\"layout-config-button\" class=\"layout-config-button\" [ngClass]=\"assistance.buttonPosition\" style=\"cursor: pointer;\" (click)=\"showAssistance()\"><i class=\"fa-solid fa-gear text-surface-100\"></i></a>\r\n </div>\r\n <ui-drawer [(visible)]=\"isVisible\" [position]=\"assistance.sidebarData.position\" styleClass=\"assistence_sidebar\" (hidden)=\"onHide()\" (shown)=\"onShow()\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-start p-2\">\r\n <h5>Menu</h5>\r\n <div class=\"flex flex-wrap gap-2\">\r\n <ui-select-button appendTo=\"body\" [options]=\"menuTypes\" [(ngModel)]=\"menuType\" (changed)=\"onMenuTypeChange()\" optionLabel=\"label\" optionValue=\"value\"></ui-select-button>\r\n <div class=\"w-5/12 flex-none mt-2 mr-2\">\r\n <label for=\"sidebar-width\">Sidebar Width</label>\r\n <input id=\"sidebar-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarWidth\" appInputChangeDetection (valueChanged)=\"setSidebarWidth($event)\"/>\r\n </div>\r\n <div class=\"flex-1 mt-2\">\r\n <label for=\"sidebar-slim-width\">Slim Width</label>\r\n <input id=\"sidebar-slim-width\" type=\"text\" smzInputText [(ngModel)]=\"layout.sidebarSlimWidth\" appInputChangeDetection (valueChanged)=\"setSidebarSlimWidth($event)\"/>\r\n </div>\r\n </div>\r\n <smz-ui-global-assistance></smz-ui-global-assistance>\r\n </div>\r\n </ui-drawer>\r\n }\r\n}", styles: ["smz-ui-new-athena-assistance .p-sidebar-content{overflow-y:auto;height:100%}smz-ui-new-athena-assistance .assistence_sidebar{width:35em}\n"] }]
43165
43165
  }], ctorParameters: () => [] });
43166
43166
 
43167
43167
  /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return, @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/explicit-function-return-type, @typescript-eslint/typedef, no-underscore-dangle, no-console, eqeqeq, @typescript-eslint/no-unused-vars, @typescript-eslint/no-useless-constructor, @typescript-eslint/explicit-member-accessibility, max-len, no-prototype-builtins, @typescript-eslint/no-shadow, @typescript-eslint/no-empty-object-type */
@@ -43751,7 +43751,7 @@ class SmzTreeBuilder {
43751
43751
  mode: 'lenient',
43752
43752
  show: false,
43753
43753
  textPlaceholder: 'Filtro...',
43754
- styleClass: 'lg:col-4 md:col-6'
43754
+ styleClass: 'lg:w-4/12 flex-none md:w-6/12'
43755
43755
  },
43756
43756
  loading: {
43757
43757
  icon: 'fa-solid fa-circle-notch fa-spin',
@@ -44773,11 +44773,11 @@ class SmzTreeComponent {
44773
44773
  }
44774
44774
  }
44775
44775
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTreeComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: TreeHelperService }], target: i0.ɵɵFactoryTarget.Component });
44776
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTreeComponent, isStandalone: false, selector: "smz-ui-tree", inputs: { state: "state", items: "items", loading: "loading", styleClass: "styleClass", inlineStyle: "inlineStyle", appendTo: "appendTo", selection: "selection", selectionKey: "selectionKey" }, outputs: { selectedNodes: "selectedNodes", selectionChange: "selectionChange", parentChange: "parentChange", reorder: "reorder", blockedDrop: "blockedDrop", nodeExpanded: "nodeExpanded", nodeCollapsed: "nodeCollapsed", treeExpanded: "treeExpanded", nodeDropped: "nodeDropped" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "dt", first: true, predicate: SmzUiTreeComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (state) {\r\n @if ((state.emptyFeedback?.isFeatured) && (treeItems != null && treeItems.length === 0)) {\r\n <smz-data-info\r\n [image]=\"state.emptyFeedback.image\"\r\n [message]=\"state.emptyFeedback.message\"\r\n [callbackInfo]=\"state.emptyFeedback.extraInfo\"\r\n [callbackLabel]=\"state.emptyFeedback.actionButton?.label\"\r\n (clicked)=\"state.emptyFeedback.actionButton?.callback($event)\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n @if (treeItems != null) {\r\n <ui-menu #cm [model]=\"menuItems\" [popup]=\"true\" [styleClass]=\"menuItems == null || menuItems?.length === 0 ? 'invisible-important' : ''\"></ui-menu>\r\n <ui-menu #rowMenu [model]=\"menuItems\" [popup]=\"true\" appendTo=\"body\"></ui-menu>\r\n <ui-tree #dt [value]=\"treeItems\" scrollHeight=\"flex\" [contextMenu]=\"state.menu.behavior === 'context-menu' ? cm : null\" [selectionMode]=\"state.selection.mode\" [(selection)]=\"primeSelection\" layout=\"vertical\" [style]=\"inlineStyle\" [styleClass]=\"styleClass\" [propagateSelectionUp]=\"state.selection.propagateUp\" [propagateSelectionDown]=\"state.selection.propagateDown\" [loading]=\"state.loading.isLoading\" [loadingIcon]=\"state.loading.icon\" [filter]=\"false\" [filterMode]=\"state.filter.mode\" [filterPlaceholder]=\"state.filter.textPlaceholder\" [draggableNodes]=\"state.dragAndDrop.draggable\" [droppableNodes]=\"state.dragAndDrop.droppable\" [validateDrop]=\"state.dragAndDrop.validateDrop\" (nodeContextMenuSelect)=\"onContextMenuOpen($event)\" (nodeSelect)=\"onSelected($event)\" (nodeUnselect)=\"onUnselected($event)\" (nodeExpand)=\"onExpanded($event)\" (nodeCollapse)=\"onCollapsed($event)\" (nodeDrop)=\"onDropped($event)\" (filtered)=\"onFiltered($event)\">\r\n @if (state.header.isVisible) {\r\n <ng-template smzTemplate=\"header\">\r\n @if (state.header.toolbar; as toolbar) {\r\n @if (headerTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center w-full justify-start\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n <div class=\"grid grid-nogutter justify-start items-center mb-2 gap-2\">\r\n @if (state.header.title != null) {\r\n <h3 class=\"m-2 col\">{{state.header.title}}</h3>\r\n }\r\n <div class=\"grid grid-nogutter justify-start items-center gap-2\">\r\n @for (button of state.header.toolbar.items; track button; let i = $index) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': button.color === 'secondary', 'p-button-success': button.color === 'success', 'p-button-info': button.color === 'info', 'p-button-warning': button.color === 'warning', 'p-button-help': button.color === 'help', 'p-button-danger': button.color === 'danger' }\" [label]=\"button.label\" [icon]=\"button.icon\" (click)=\"onToolbarButtonClick($event, button, treeItems)\" [smzTooltip]=\"button.tooltip\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.expandLabel\" icon=\"fa-solid fa-angle-down\" (click)=\"expandNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.expandTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angle-up\" (click)=\"collapseNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.collapseTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.expandLabel\" icon=\"fa-solid fa-angles-down\" (click)=\"expandAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.expandLabel != null && toolbar.treeExpandButtons.expandLabel !== '' \r\n ? toolbar.treeExpandButtons.expandLabel \r\n : 'Expandir \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angles-up\" (click)=\"collapseAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.collapseLabel != null && toolbar.treeExpandButtons.collapseLabel !== '' \r\n ? toolbar.treeExpandButtons.collapseLabel \r\n : 'Colapsar \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeSelectionButtons?.isVisible === true) {\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.selectAllLabel\" icon=\"fa-solid fa-check-double\" (click)=\"selectAll()\" [disabled]=\"state.selection?.mode === 'single'\" [smzTooltip]=\"state.selection?.mode === 'single' \r\n ? 'Dispon\u00EDvel apenas em sele\u00E7\u00E3o m\u00FAltipla' \r\n : (toolbar.treeSelectionButtons.selectAllLabel != null && toolbar.treeSelectionButtons.selectAllLabel !== '' ? toolbar.treeSelectionButtons.selectAllLabel : 'Selecionar tudo')\">\r\n </button>\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.clearSelectionLabel\" icon=\"fa-solid fa-eraser\" (click)=\"clearSelection()\" [disabled]=\"!hasSelection\" [smzTooltip]=\"toolbar.treeSelectionButtons.clearSelectionLabel != null && toolbar.treeSelectionButtons.clearSelectionLabel !== '' \r\n ? toolbar.treeSelectionButtons.clearSelectionLabel \r\n : 'Limpar sele\u00E7\u00E3o'\">\r\n </button>\r\n }\r\n\r\n @if (actionsTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (state.filter.show) {\r\n <ui-icon-field class=\"col-12\" [ngClass]=\"state.filter.styleClass\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal smzInputText type=\"text\" (input)=\"dt._filter(inputGlobal.value)\" [placeholder]=\"state.filter.textPlaceholder\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center mt-2\"\r\n [ngClass]=\"'justify-' + state.header.toolbar.alignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n }\r\n </ng-template>\r\n }\r\n @if (state.footer.isVisible) {\r\n <ng-template smzTemplate=\"footer\">\r\n <div class=\"grid grid-nogutter justify-start items-center\">\r\n <span class=\"col mr-2\">FOOTER</span>\r\n </div>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"content.type\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n @if (content.template != null) {\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n } @else {\r\n <div>{{ node.label }}</div>\r\n }\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-node smzTemplate=\"Check\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <div>{{ node.label }}</div>\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"empty\">\r\n @if (!state.emptyFeedback.isFeatured) {\r\n <div>{{ state.emptyFeedback.message }}</div>\r\n }\r\n </ng-template>\r\n </ui-tree>\r\n }\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "component", type: SmzDataInfoComponent, selector: "smz-data-info", inputs: ["image", "message", "actions", "callbackInfo", "callbackLabel"], outputs: ["clicked"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzMenuListComponent, selector: "ui-menu", inputs: ["model", "popup", "style", "styleClass", "autoZIndex", "appendTo", "baseZIndex"], outputs: ["shown", "hidden"] }, { kind: "component", type: i2.SmzUiTreeComponent, selector: "ui-tree", inputs: ["value", "selectionMode", "selection", "metaKeySelection", "propagateSelectionUp", "propagateSelectionDown", "loading", "loadingIcon", "filter", "filterMode", "filterPlaceholder", "filterBy", "emptyMessage", "draggableNodes", "droppableNodes", "validateDrop", "scrollHeight", "style", "styleClass", "contextMenu", "templateOverride", "layout", "virtualScroll"], outputs: ["selectionChange", "nodeSelect", "nodeUnselect", "nodeExpand", "nodeCollapse", "nodeContextMenuSelect", "nodeDblClick", "nodeDrop", "filtered"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzIconFieldComponent, selector: "ui-icon-field" }, { kind: "component", type: i2.SmzInputIconComponent, selector: "ui-input-icon", inputs: ["styleClass"] }], changeDetection: i0.ChangeDetectionStrategy.Eager });
44776
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTreeComponent, isStandalone: false, selector: "smz-ui-tree", inputs: { state: "state", items: "items", loading: "loading", styleClass: "styleClass", inlineStyle: "inlineStyle", appendTo: "appendTo", selection: "selection", selectionKey: "selectionKey" }, outputs: { selectedNodes: "selectedNodes", selectionChange: "selectionChange", parentChange: "parentChange", reorder: "reorder", blockedDrop: "blockedDrop", nodeExpanded: "nodeExpanded", nodeCollapsed: "nodeCollapsed", treeExpanded: "treeExpanded", nodeDropped: "nodeDropped" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "dt", first: true, predicate: SmzUiTreeComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (state) {\r\n @if ((state.emptyFeedback?.isFeatured) && (treeItems != null && treeItems.length === 0)) {\r\n <smz-data-info\r\n [image]=\"state.emptyFeedback.image\"\r\n [message]=\"state.emptyFeedback.message\"\r\n [callbackInfo]=\"state.emptyFeedback.extraInfo\"\r\n [callbackLabel]=\"state.emptyFeedback.actionButton?.label\"\r\n (clicked)=\"state.emptyFeedback.actionButton?.callback($event)\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n @if (treeItems != null) {\r\n <ui-menu #cm [model]=\"menuItems\" [popup]=\"true\" [styleClass]=\"menuItems == null || menuItems?.length === 0 ? 'invisible-important' : ''\"></ui-menu>\r\n <ui-menu #rowMenu [model]=\"menuItems\" [popup]=\"true\" appendTo=\"body\"></ui-menu>\r\n <ui-tree #dt [value]=\"treeItems\" scrollHeight=\"flex\" [contextMenu]=\"state.menu.behavior === 'context-menu' ? cm : null\" [selectionMode]=\"state.selection.mode\" [(selection)]=\"primeSelection\" layout=\"vertical\" [style]=\"inlineStyle\" [styleClass]=\"styleClass\" [propagateSelectionUp]=\"state.selection.propagateUp\" [propagateSelectionDown]=\"state.selection.propagateDown\" [loading]=\"state.loading.isLoading\" [loadingIcon]=\"state.loading.icon\" [filter]=\"false\" [filterMode]=\"state.filter.mode\" [filterPlaceholder]=\"state.filter.textPlaceholder\" [draggableNodes]=\"state.dragAndDrop.draggable\" [droppableNodes]=\"state.dragAndDrop.droppable\" [validateDrop]=\"state.dragAndDrop.validateDrop\" (nodeContextMenuSelect)=\"onContextMenuOpen($event)\" (nodeSelect)=\"onSelected($event)\" (nodeUnselect)=\"onUnselected($event)\" (nodeExpand)=\"onExpanded($event)\" (nodeCollapse)=\"onCollapsed($event)\" (nodeDrop)=\"onDropped($event)\" (filtered)=\"onFiltered($event)\">\r\n @if (state.header.isVisible) {\r\n <ng-template smzTemplate=\"header\">\r\n @if (state.header.toolbar; as toolbar) {\r\n @if (headerTemplate != null) {\r\n <div class=\"flex flex-wrap items-center w-full justify-start\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n <div class=\"flex flex-wrap justify-start items-center mb-2 gap-2\">\r\n @if (state.header.title != null) {\r\n <h3 class=\"m-2 flex-1\">{{state.header.title}}</h3>\r\n }\r\n <div class=\"flex flex-wrap justify-start items-center gap-2\">\r\n @for (button of state.header.toolbar.items; track button; let i = $index) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': button.color === 'secondary', 'p-button-success': button.color === 'success', 'p-button-info': button.color === 'info', 'p-button-warning': button.color === 'warning', 'p-button-help': button.color === 'help', 'p-button-danger': button.color === 'danger' }\" [label]=\"button.label\" [icon]=\"button.icon\" (click)=\"onToolbarButtonClick($event, button, treeItems)\" [smzTooltip]=\"button.tooltip\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.expandLabel\" icon=\"fa-solid fa-angle-down\" (click)=\"expandNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.expandTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angle-up\" (click)=\"collapseNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.collapseTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.expandLabel\" icon=\"fa-solid fa-angles-down\" (click)=\"expandAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.expandLabel != null && toolbar.treeExpandButtons.expandLabel !== '' \r\n ? toolbar.treeExpandButtons.expandLabel \r\n : 'Expandir \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angles-up\" (click)=\"collapseAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.collapseLabel != null && toolbar.treeExpandButtons.collapseLabel !== '' \r\n ? toolbar.treeExpandButtons.collapseLabel \r\n : 'Colapsar \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeSelectionButtons?.isVisible === true) {\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.selectAllLabel\" icon=\"fa-solid fa-check-double\" (click)=\"selectAll()\" [disabled]=\"state.selection?.mode === 'single'\" [smzTooltip]=\"state.selection?.mode === 'single' \r\n ? 'Dispon\u00EDvel apenas em sele\u00E7\u00E3o m\u00FAltipla' \r\n : (toolbar.treeSelectionButtons.selectAllLabel != null && toolbar.treeSelectionButtons.selectAllLabel !== '' ? toolbar.treeSelectionButtons.selectAllLabel : 'Selecionar tudo')\">\r\n </button>\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.clearSelectionLabel\" icon=\"fa-solid fa-eraser\" (click)=\"clearSelection()\" [disabled]=\"!hasSelection\" [smzTooltip]=\"toolbar.treeSelectionButtons.clearSelectionLabel != null && toolbar.treeSelectionButtons.clearSelectionLabel !== '' \r\n ? toolbar.treeSelectionButtons.clearSelectionLabel \r\n : 'Limpar sele\u00E7\u00E3o'\">\r\n </button>\r\n }\r\n\r\n @if (actionsTemplate != null) {\r\n <div class=\"flex flex-wrap items-center justify-start\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (state.filter.show) {\r\n <ui-icon-field class=\"w-full flex-none\" [ngClass]=\"state.filter.styleClass\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal smzInputText type=\"text\" (input)=\"dt._filter(inputGlobal.value)\" [placeholder]=\"state.filter.textPlaceholder\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"flex flex-wrap items-center mt-2\"\r\n [ngClass]=\"'justify-' + state.header.toolbar.alignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n }\r\n </ng-template>\r\n }\r\n @if (state.footer.isVisible) {\r\n <ng-template smzTemplate=\"footer\">\r\n <div class=\"flex flex-wrap justify-start items-center\">\r\n <span class=\"flex-1 mr-2\">FOOTER</span>\r\n </div>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"content.type\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n @if (content.template != null) {\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n } @else {\r\n <div>{{ node.label }}</div>\r\n }\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-node smzTemplate=\"Check\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <div>{{ node.label }}</div>\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"empty\">\r\n @if (!state.emptyFeedback.isFeatured) {\r\n <div>{{ state.emptyFeedback.message }}</div>\r\n }\r\n </ng-template>\r\n </ui-tree>\r\n }\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "component", type: SmzDataInfoComponent, selector: "smz-data-info", inputs: ["image", "message", "actions", "callbackInfo", "callbackLabel"], outputs: ["clicked"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "component", type: i2.SmzMenuListComponent, selector: "ui-menu", inputs: ["model", "popup", "style", "styleClass", "autoZIndex", "appendTo", "baseZIndex"], outputs: ["shown", "hidden"] }, { kind: "component", type: i2.SmzUiTreeComponent, selector: "ui-tree", inputs: ["value", "selectionMode", "selection", "metaKeySelection", "propagateSelectionUp", "propagateSelectionDown", "loading", "loadingIcon", "filter", "filterMode", "filterPlaceholder", "filterBy", "emptyMessage", "draggableNodes", "droppableNodes", "validateDrop", "scrollHeight", "style", "styleClass", "contextMenu", "templateOverride", "layout", "virtualScroll"], outputs: ["selectionChange", "nodeSelect", "nodeUnselect", "nodeExpand", "nodeCollapse", "nodeContextMenuSelect", "nodeDblClick", "nodeDrop", "filtered"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzIconFieldComponent, selector: "ui-icon-field" }, { kind: "component", type: i2.SmzInputIconComponent, selector: "ui-input-icon", inputs: ["styleClass"] }], changeDetection: i0.ChangeDetectionStrategy.Eager });
44777
44777
  }
44778
44778
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTreeComponent, decorators: [{
44779
44779
  type: Component,
44780
- args: [{ selector: 'smz-ui-tree', changeDetection: ChangeDetectionStrategy.Default, standalone: false, template: "@if (state) {\r\n @if ((state.emptyFeedback?.isFeatured) && (treeItems != null && treeItems.length === 0)) {\r\n <smz-data-info\r\n [image]=\"state.emptyFeedback.image\"\r\n [message]=\"state.emptyFeedback.message\"\r\n [callbackInfo]=\"state.emptyFeedback.extraInfo\"\r\n [callbackLabel]=\"state.emptyFeedback.actionButton?.label\"\r\n (clicked)=\"state.emptyFeedback.actionButton?.callback($event)\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n @if (treeItems != null) {\r\n <ui-menu #cm [model]=\"menuItems\" [popup]=\"true\" [styleClass]=\"menuItems == null || menuItems?.length === 0 ? 'invisible-important' : ''\"></ui-menu>\r\n <ui-menu #rowMenu [model]=\"menuItems\" [popup]=\"true\" appendTo=\"body\"></ui-menu>\r\n <ui-tree #dt [value]=\"treeItems\" scrollHeight=\"flex\" [contextMenu]=\"state.menu.behavior === 'context-menu' ? cm : null\" [selectionMode]=\"state.selection.mode\" [(selection)]=\"primeSelection\" layout=\"vertical\" [style]=\"inlineStyle\" [styleClass]=\"styleClass\" [propagateSelectionUp]=\"state.selection.propagateUp\" [propagateSelectionDown]=\"state.selection.propagateDown\" [loading]=\"state.loading.isLoading\" [loadingIcon]=\"state.loading.icon\" [filter]=\"false\" [filterMode]=\"state.filter.mode\" [filterPlaceholder]=\"state.filter.textPlaceholder\" [draggableNodes]=\"state.dragAndDrop.draggable\" [droppableNodes]=\"state.dragAndDrop.droppable\" [validateDrop]=\"state.dragAndDrop.validateDrop\" (nodeContextMenuSelect)=\"onContextMenuOpen($event)\" (nodeSelect)=\"onSelected($event)\" (nodeUnselect)=\"onUnselected($event)\" (nodeExpand)=\"onExpanded($event)\" (nodeCollapse)=\"onCollapsed($event)\" (nodeDrop)=\"onDropped($event)\" (filtered)=\"onFiltered($event)\">\r\n @if (state.header.isVisible) {\r\n <ng-template smzTemplate=\"header\">\r\n @if (state.header.toolbar; as toolbar) {\r\n @if (headerTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center w-full justify-start\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n <div class=\"grid grid-nogutter justify-start items-center mb-2 gap-2\">\r\n @if (state.header.title != null) {\r\n <h3 class=\"m-2 col\">{{state.header.title}}</h3>\r\n }\r\n <div class=\"grid grid-nogutter justify-start items-center gap-2\">\r\n @for (button of state.header.toolbar.items; track button; let i = $index) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': button.color === 'secondary', 'p-button-success': button.color === 'success', 'p-button-info': button.color === 'info', 'p-button-warning': button.color === 'warning', 'p-button-help': button.color === 'help', 'p-button-danger': button.color === 'danger' }\" [label]=\"button.label\" [icon]=\"button.icon\" (click)=\"onToolbarButtonClick($event, button, treeItems)\" [smzTooltip]=\"button.tooltip\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.expandLabel\" icon=\"fa-solid fa-angle-down\" (click)=\"expandNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.expandTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angle-up\" (click)=\"collapseNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.collapseTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.expandLabel\" icon=\"fa-solid fa-angles-down\" (click)=\"expandAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.expandLabel != null && toolbar.treeExpandButtons.expandLabel !== '' \r\n ? toolbar.treeExpandButtons.expandLabel \r\n : 'Expandir \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angles-up\" (click)=\"collapseAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.collapseLabel != null && toolbar.treeExpandButtons.collapseLabel !== '' \r\n ? toolbar.treeExpandButtons.collapseLabel \r\n : 'Colapsar \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeSelectionButtons?.isVisible === true) {\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.selectAllLabel\" icon=\"fa-solid fa-check-double\" (click)=\"selectAll()\" [disabled]=\"state.selection?.mode === 'single'\" [smzTooltip]=\"state.selection?.mode === 'single' \r\n ? 'Dispon\u00EDvel apenas em sele\u00E7\u00E3o m\u00FAltipla' \r\n : (toolbar.treeSelectionButtons.selectAllLabel != null && toolbar.treeSelectionButtons.selectAllLabel !== '' ? toolbar.treeSelectionButtons.selectAllLabel : 'Selecionar tudo')\">\r\n </button>\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.clearSelectionLabel\" icon=\"fa-solid fa-eraser\" (click)=\"clearSelection()\" [disabled]=\"!hasSelection\" [smzTooltip]=\"toolbar.treeSelectionButtons.clearSelectionLabel != null && toolbar.treeSelectionButtons.clearSelectionLabel !== '' \r\n ? toolbar.treeSelectionButtons.clearSelectionLabel \r\n : 'Limpar sele\u00E7\u00E3o'\">\r\n </button>\r\n }\r\n\r\n @if (actionsTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center justify-start\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (state.filter.show) {\r\n <ui-icon-field class=\"col-12\" [ngClass]=\"state.filter.styleClass\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal smzInputText type=\"text\" (input)=\"dt._filter(inputGlobal.value)\" [placeholder]=\"state.filter.textPlaceholder\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"grid grid-nogutter items-center mt-2\"\r\n [ngClass]=\"'justify-' + state.header.toolbar.alignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n }\r\n </ng-template>\r\n }\r\n @if (state.footer.isVisible) {\r\n <ng-template smzTemplate=\"footer\">\r\n <div class=\"grid grid-nogutter justify-start items-center\">\r\n <span class=\"col mr-2\">FOOTER</span>\r\n </div>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"content.type\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n @if (content.template != null) {\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n } @else {\r\n <div>{{ node.label }}</div>\r\n }\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-node smzTemplate=\"Check\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <div>{{ node.label }}</div>\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"empty\">\r\n @if (!state.emptyFeedback.isFeatured) {\r\n <div>{{ state.emptyFeedback.message }}</div>\r\n }\r\n </ng-template>\r\n </ui-tree>\r\n }\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n" }]
44780
+ args: [{ selector: 'smz-ui-tree', changeDetection: ChangeDetectionStrategy.Default, standalone: false, template: "@if (state) {\r\n @if ((state.emptyFeedback?.isFeatured) && (treeItems != null && treeItems.length === 0)) {\r\n <smz-data-info\r\n [image]=\"state.emptyFeedback.image\"\r\n [message]=\"state.emptyFeedback.message\"\r\n [callbackInfo]=\"state.emptyFeedback.extraInfo\"\r\n [callbackLabel]=\"state.emptyFeedback.actionButton?.label\"\r\n (clicked)=\"state.emptyFeedback.actionButton?.callback($event)\">\r\n <ng-template smzTemplate=\"actions\">\r\n <ng-container *ngTemplateOutlet=\"emptyActionsTemplate; context: { $implicit: {} }\"></ng-container>\r\n </ng-template>\r\n </smz-data-info>\r\n } @else {\r\n @if (treeItems != null) {\r\n <ui-menu #cm [model]=\"menuItems\" [popup]=\"true\" [styleClass]=\"menuItems == null || menuItems?.length === 0 ? 'invisible-important' : ''\"></ui-menu>\r\n <ui-menu #rowMenu [model]=\"menuItems\" [popup]=\"true\" appendTo=\"body\"></ui-menu>\r\n <ui-tree #dt [value]=\"treeItems\" scrollHeight=\"flex\" [contextMenu]=\"state.menu.behavior === 'context-menu' ? cm : null\" [selectionMode]=\"state.selection.mode\" [(selection)]=\"primeSelection\" layout=\"vertical\" [style]=\"inlineStyle\" [styleClass]=\"styleClass\" [propagateSelectionUp]=\"state.selection.propagateUp\" [propagateSelectionDown]=\"state.selection.propagateDown\" [loading]=\"state.loading.isLoading\" [loadingIcon]=\"state.loading.icon\" [filter]=\"false\" [filterMode]=\"state.filter.mode\" [filterPlaceholder]=\"state.filter.textPlaceholder\" [draggableNodes]=\"state.dragAndDrop.draggable\" [droppableNodes]=\"state.dragAndDrop.droppable\" [validateDrop]=\"state.dragAndDrop.validateDrop\" (nodeContextMenuSelect)=\"onContextMenuOpen($event)\" (nodeSelect)=\"onSelected($event)\" (nodeUnselect)=\"onUnselected($event)\" (nodeExpand)=\"onExpanded($event)\" (nodeCollapse)=\"onCollapsed($event)\" (nodeDrop)=\"onDropped($event)\" (filtered)=\"onFiltered($event)\">\r\n @if (state.header.isVisible) {\r\n <ng-template smzTemplate=\"header\">\r\n @if (state.header.toolbar; as toolbar) {\r\n @if (headerTemplate != null) {\r\n <div class=\"flex flex-wrap items-center w-full justify-start\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n <div class=\"flex flex-wrap justify-start items-center mb-2 gap-2\">\r\n @if (state.header.title != null) {\r\n <h3 class=\"m-2 flex-1\">{{state.header.title}}</h3>\r\n }\r\n <div class=\"flex flex-wrap justify-start items-center gap-2\">\r\n @for (button of state.header.toolbar.items; track button; let i = $index) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': button.color === 'secondary', 'p-button-success': button.color === 'success', 'p-button-info': button.color === 'info', 'p-button-warning': button.color === 'warning', 'p-button-help': button.color === 'help', 'p-button-danger': button.color === 'danger' }\" [label]=\"button.label\" [icon]=\"button.icon\" (click)=\"onToolbarButtonClick($event, button, treeItems)\" [smzTooltip]=\"button.tooltip\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.expandLabel\" icon=\"fa-solid fa-angle-down\" (click)=\"expandNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.expandTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.nodeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.nodeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angle-up\" (click)=\"collapseNode()\" [smzTooltip]=\"selection != null ? toolbar.nodeExpandButtons.collapseTooltip : toolbar.nodeExpandButtons.disabledTooltip\" [disabled]=\"selection == null\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.expandLabel\" icon=\"fa-solid fa-angles-down\" (click)=\"expandAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.expandLabel != null && toolbar.treeExpandButtons.expandLabel !== '' \r\n ? toolbar.treeExpandButtons.expandLabel \r\n : 'Expandir \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeExpandButtons.isVisible === true) {\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeExpandButtons.collapseLabel\" icon=\"fa-solid fa-angles-up\" (click)=\"collapseAll()\" [smzTooltip]=\"toolbar.treeExpandButtons.collapseLabel != null && toolbar.treeExpandButtons.collapseLabel !== '' \r\n ? toolbar.treeExpandButtons.collapseLabel \r\n : 'Colapsar \u00E1rvore'\">\r\n </button>\r\n }\r\n @if (toolbar.treeSelectionButtons?.isVisible === true) {\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.selectAllLabel\" icon=\"fa-solid fa-check-double\" (click)=\"selectAll()\" [disabled]=\"state.selection?.mode === 'single'\" [smzTooltip]=\"state.selection?.mode === 'single' \r\n ? 'Dispon\u00EDvel apenas em sele\u00E7\u00E3o m\u00FAltipla' \r\n : (toolbar.treeSelectionButtons.selectAllLabel != null && toolbar.treeSelectionButtons.selectAllLabel !== '' ? toolbar.treeSelectionButtons.selectAllLabel : 'Selecionar tudo')\">\r\n </button>\r\n\r\n <button smzButton smzRipple type=\"button\" [styleClass]=\"{ 'p-button-text': toolbar.buttonType.endsWith('borderless'), 'p-button-outlined': toolbar.buttonType.endsWith('outlined'), 'p-button-rounded': toolbar.buttonType.startsWith('rounded'), 'p-button-secondary': true }\" [label]=\"toolbar.treeSelectionButtons.clearSelectionLabel\" icon=\"fa-solid fa-eraser\" (click)=\"clearSelection()\" [disabled]=\"!hasSelection\" [smzTooltip]=\"toolbar.treeSelectionButtons.clearSelectionLabel != null && toolbar.treeSelectionButtons.clearSelectionLabel !== '' \r\n ? toolbar.treeSelectionButtons.clearSelectionLabel \r\n : 'Limpar sele\u00E7\u00E3o'\">\r\n </button>\r\n }\r\n\r\n @if (actionsTemplate != null) {\r\n <div class=\"flex flex-wrap items-center justify-start\">\r\n <ng-container *ngTemplateOutlet=\"actionsTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n @if (state.filter.show) {\r\n <ui-icon-field class=\"w-full flex-none\" [ngClass]=\"state.filter.styleClass\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input #inputGlobal smzInputText type=\"text\" (input)=\"dt._filter(inputGlobal.value)\" [placeholder]=\"state.filter.textPlaceholder\" />\r\n </ui-icon-field>\r\n }\r\n </div>\r\n @if (toolbarTemplate != null) {\r\n <div class=\"flex flex-wrap items-center mt-2\"\r\n [ngClass]=\"'justify-' + state.header.toolbar.alignment\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: dt }\"></ng-container>\r\n </div>\r\n }\r\n }\r\n </ng-template>\r\n }\r\n @if (state.footer.isVisible) {\r\n <ng-template smzTemplate=\"footer\">\r\n <div class=\"flex flex-wrap justify-start items-center\">\r\n <span class=\"flex-1 mr-2\">FOOTER</span>\r\n </div>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"content.type\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n @if (content.template != null) {\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n } @else {\r\n <div>{{ node.label }}</div>\r\n }\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-node smzTemplate=\"Check\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <div>{{ node.label }}</div>\r\n @if (state.menu.behavior === 'row-menu') {\r\n <button smzButton clickStopPropagation (click)=\"onRowMenuOpen(node, rowMenu, $event)\" [icon]=\"state.menu.rowMenuIcon\" [rounded]=\"true\" [text]=\"true\" [severity]=\"state.menu.rowMenuIconSeverity\"></button>\r\n }\r\n </div>\r\n </ng-template>\r\n <ng-template smzTemplate=\"empty\">\r\n @if (!state.emptyFeedback.isFeatured) {\r\n <div>{{ state.emptyFeedback.message }}</div>\r\n }\r\n </ng-template>\r\n </ui-tree>\r\n }\r\n }\r\n} @else {\r\n @if (emptyStateTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptyStateTemplate; context: { $implicit: {} }\"></ng-container>\r\n }\r\n}\r\n\r\n" }]
44781
44781
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: TreeHelperService }], propDecorators: { dt: [{
44782
44782
  type: ViewChild,
44783
44783
  args: [SmzUiTreeComponent]
@@ -45069,11 +45069,11 @@ class SmzTreeWithDetailsComponent {
45069
45069
  this.selectionChange.emit(node);
45070
45070
  }
45071
45071
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTreeWithDetailsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
45072
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTreeWithDetailsComponent, isStandalone: false, selector: "smz-ui-tree-with-details", inputs: { state: "state" }, outputs: { selectionChange: "selectionChange", detailsChange: "detailsChange" }, host: { classAttribute: "absolute inset-0" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "treeComponent", first: true, predicate: SmzTreeComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (state != null) {\r\n <div class=\"grid grid-nogutter items-start justify-start h-full\" [ngClass]=\"state?.styleClass?.content\">\r\n <ng-container *ngClone=\"state.items$ | async as items\">\r\n <!-- TREE -->\r\n <div class=\"h-full col p-0\">\r\n <div smzUiBlock #treeContainer [component]=\"treeContainer\" class=\"h-full w-full rounded p-2 bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <div class=\"h-full\">\r\n <ng-container *ngVar=\"items | treeItems : state as treeItems\">\r\n <smz-ui-tree #treeComponent [items]=\"treeItems\" [state]=\"state.tree.state\" (selectionChange)=\"selectionChanged($event)\" [styleClass]=\"state.tree.styleClass\">\r\n @if (headerTemplate != null) {\r\n <ng-template smzTemplate=\"header\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @if (toolbarTemplate != null) {\r\n <ng-template smzTemplate=\"toolbar\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"'type:' + content.type\">\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n </ng-template>\r\n }\r\n </smz-ui-tree>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- DETAILS -->\r\n <div class=\"h-full col-12\" [ngClass]=\"state.layout.detailsStyleClass\">\r\n <div class=\"h-full items-stretch flex-col grid justify-start grid-nogutter rounded w-full overflow-y-auto bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <!-- CONTE\u00DADO -->\r\n @if (state.context.selectedNode != null) {\r\n @if (detailsTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"detailsTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n }\r\n } @else {\r\n @if (items != null) {\r\n @if (emptySelectionTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptySelectionTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n } @else {\r\n <div class=\"grid grid-nogutter items-center justify-center p-4 flex-col flex-grow mt-10\">\r\n <i class=\"fas fa-info-circle text-5xl text-yellow-500 mb-4\"></i>\r\n <div class=\"text-lg\">Nenhum item selecionado.</div>\r\n </div>\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzTreeComponent, selector: "smz-ui-tree", inputs: ["state", "items", "loading", "styleClass", "inlineStyle", "appendTo", "selection", "selectionKey"], outputs: ["selectedNodes", "selectionChange", "parentChange", "reorder", "blockedDrop", "nodeExpanded", "nodeCollapsed", "treeExpanded", "nodeDropped"] }, { kind: "directive", type: NgCloneDirective, selector: "[ngClone]", inputs: ["ngClone"] }, { kind: "directive", type: SmzUiBlockDirective, selector: "[smzUiBlock]", inputs: ["component"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TreeItemsPipe, name: "treeItems" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
45072
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTreeWithDetailsComponent, isStandalone: false, selector: "smz-ui-tree-with-details", inputs: { state: "state" }, outputs: { selectionChange: "selectionChange", detailsChange: "detailsChange" }, host: { classAttribute: "absolute inset-0" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "treeComponent", first: true, predicate: SmzTreeComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "@if (state != null) {\r\n <div class=\"flex flex-wrap items-start justify-start h-full\" [ngClass]=\"state?.styleClass?.content\">\r\n <ng-container *ngClone=\"state.items$ | async as items\">\r\n <!-- TREE -->\r\n <div class=\"h-full flex-1 basis-0 p-0\">\r\n <div smzUiBlock #treeContainer [component]=\"treeContainer\" class=\"h-full w-full rounded p-2 bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <div class=\"h-full\">\r\n <ng-container *ngVar=\"items | treeItems : state as treeItems\">\r\n <smz-ui-tree #treeComponent [items]=\"treeItems\" [state]=\"state.tree.state\" (selectionChange)=\"selectionChanged($event)\" [styleClass]=\"state.tree.styleClass\">\r\n @if (headerTemplate != null) {\r\n <ng-template smzTemplate=\"header\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @if (toolbarTemplate != null) {\r\n <ng-template smzTemplate=\"toolbar\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"'type:' + content.type\">\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n </ng-template>\r\n }\r\n </smz-ui-tree>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- DETAILS -->\r\n <div class=\"h-full w-full flex-none p-2\" [ngClass]=\"state.layout.detailsStyleClass\">\r\n <div class=\"h-full items-stretch flex-col flex flex-wrap justify-start rounded w-full overflow-y-auto bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <!-- CONTE\u00DADO -->\r\n @if (state.context.selectedNode != null) {\r\n @if (detailsTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"detailsTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n }\r\n } @else {\r\n @if (items != null) {\r\n @if (emptySelectionTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptySelectionTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n } @else {\r\n <div class=\"flex flex-wrap items-center justify-center p-4 flex-col flex-grow mt-10\">\r\n <i class=\"fas fa-info-circle text-5xl text-yellow-500 mb-4\"></i>\r\n <div class=\"text-lg\">Nenhum item selecionado.</div>\r\n </div>\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzTreeComponent, selector: "smz-ui-tree", inputs: ["state", "items", "loading", "styleClass", "inlineStyle", "appendTo", "selection", "selectionKey"], outputs: ["selectedNodes", "selectionChange", "parentChange", "reorder", "blockedDrop", "nodeExpanded", "nodeCollapsed", "treeExpanded", "nodeDropped"] }, { kind: "directive", type: NgCloneDirective, selector: "[ngClone]", inputs: ["ngClone"] }, { kind: "directive", type: SmzUiBlockDirective, selector: "[smzUiBlock]", inputs: ["component"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: TreeItemsPipe, name: "treeItems" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
45073
45073
  }
45074
45074
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTreeWithDetailsComponent, decorators: [{
45075
45075
  type: Component,
45076
- args: [{ selector: 'smz-ui-tree-with-details', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'absolute inset-0' }, standalone: false, template: "@if (state != null) {\r\n <div class=\"grid grid-nogutter items-start justify-start h-full\" [ngClass]=\"state?.styleClass?.content\">\r\n <ng-container *ngClone=\"state.items$ | async as items\">\r\n <!-- TREE -->\r\n <div class=\"h-full col p-0\">\r\n <div smzUiBlock #treeContainer [component]=\"treeContainer\" class=\"h-full w-full rounded p-2 bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <div class=\"h-full\">\r\n <ng-container *ngVar=\"items | treeItems : state as treeItems\">\r\n <smz-ui-tree #treeComponent [items]=\"treeItems\" [state]=\"state.tree.state\" (selectionChange)=\"selectionChanged($event)\" [styleClass]=\"state.tree.styleClass\">\r\n @if (headerTemplate != null) {\r\n <ng-template smzTemplate=\"header\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @if (toolbarTemplate != null) {\r\n <ng-template smzTemplate=\"toolbar\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"'type:' + content.type\">\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n </ng-template>\r\n }\r\n </smz-ui-tree>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- DETAILS -->\r\n <div class=\"h-full col-12\" [ngClass]=\"state.layout.detailsStyleClass\">\r\n <div class=\"h-full items-stretch flex-col grid justify-start grid-nogutter rounded w-full overflow-y-auto bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <!-- CONTE\u00DADO -->\r\n @if (state.context.selectedNode != null) {\r\n @if (detailsTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"detailsTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n }\r\n } @else {\r\n @if (items != null) {\r\n @if (emptySelectionTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptySelectionTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n } @else {\r\n <div class=\"grid grid-nogutter items-center justify-center p-4 flex-col flex-grow mt-10\">\r\n <i class=\"fas fa-info-circle text-5xl text-yellow-500 mb-4\"></i>\r\n <div class=\"text-lg\">Nenhum item selecionado.</div>\r\n </div>\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n}" }]
45076
+ args: [{ selector: 'smz-ui-tree-with-details', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'absolute inset-0' }, standalone: false, template: "@if (state != null) {\r\n <div class=\"flex flex-wrap items-start justify-start h-full\" [ngClass]=\"state?.styleClass?.content\">\r\n <ng-container *ngClone=\"state.items$ | async as items\">\r\n <!-- TREE -->\r\n <div class=\"h-full flex-1 basis-0 p-0\">\r\n <div smzUiBlock #treeContainer [component]=\"treeContainer\" class=\"h-full w-full rounded p-2 bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <div class=\"h-full\">\r\n <ng-container *ngVar=\"items | treeItems : state as treeItems\">\r\n <smz-ui-tree #treeComponent [items]=\"treeItems\" [state]=\"state.tree.state\" (selectionChange)=\"selectionChanged($event)\" [styleClass]=\"state.tree.styleClass\">\r\n @if (headerTemplate != null) {\r\n <ng-template smzTemplate=\"header\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @if (toolbarTemplate != null) {\r\n <ng-template smzTemplate=\"toolbar\">\r\n <ng-container *ngTemplateOutlet=\"toolbarTemplate; context: { $implicit: state, component: treeContainer, items: treeItems }\"></ng-container>\r\n </ng-template>\r\n }\r\n @for (content of contentTemplates; track content) {\r\n <ng-template let-node [smzTemplate]=\"'type:' + content.type\">\r\n <ng-container *ngTemplateOutlet=\"content.template; context: { $implicit: node }\"></ng-container>\r\n </ng-template>\r\n }\r\n </smz-ui-tree>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- DETAILS -->\r\n <div class=\"h-full w-full flex-none p-2\" [ngClass]=\"state.layout.detailsStyleClass\">\r\n <div class=\"h-full items-stretch flex-col flex flex-wrap justify-start rounded w-full overflow-y-auto bg-surface-a text-text-color border border-solid border-surface-d\">\r\n <!-- CONTE\u00DADO -->\r\n @if (state.context.selectedNode != null) {\r\n @if (detailsTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"detailsTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n }\r\n } @else {\r\n @if (items != null) {\r\n @if (emptySelectionTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"emptySelectionTemplate; context: { $implicit: state.context.selectedNode, type: state.context.selectedNode?.type }\"></ng-container>\r\n } @else {\r\n <div class=\"flex flex-wrap items-center justify-center p-4 flex-col flex-grow mt-10\">\r\n <i class=\"fas fa-info-circle text-5xl text-yellow-500 mb-4\"></i>\r\n <div class=\"text-lg\">Nenhum item selecionado.</div>\r\n </div>\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n}" }]
45077
45077
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { treeComponent: [{
45078
45078
  type: ViewChild,
45079
45079
  args: [SmzTreeComponent]
@@ -46170,13 +46170,13 @@ class SmzCommentsComponent {
46170
46170
  <ui-tree [value]="data">
46171
46171
  <ng-template let-node smzTemplate="default">
46172
46172
  <!-- CONTAINER -->
46173
- <div class="grid grid-nogutter items-start justify-start flex-nowrap gap-3 mb-3 py-1">
46173
+ <div class="flex flex-wrap items-start justify-start flex-nowrap mb-3 py-1 gap-3">
46174
46174
  <!-- AVATAR -->
46175
46175
  <img class="w-20" [src]="node.data.avatar | safeUrl"/>
46176
46176
  <!-- CONTENT -->
46177
- <div class="col grid grid-nogutter flex-col items-start justify-start gap-2">
46177
+ <div class="flex-1 flex flex-wrap flex-col items-start justify-start gap-2">
46178
46178
  <!-- NAME AND DATE -->
46179
- <div class="grid grid-nogutter items-center justify-start gap-2">
46179
+ <div class="flex flex-wrap items-center justify-start gap-2">
46180
46180
  <!-- DISPLAY NAME -->
46181
46181
  <div class="font-bold leading-4">{{ node.data.displayName }}</div>
46182
46182
  <!-- DATE: lastUpdated → timestamp → date -->
@@ -46206,13 +46206,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
46206
46206
  <ui-tree [value]="data">
46207
46207
  <ng-template let-node smzTemplate="default">
46208
46208
  <!-- CONTAINER -->
46209
- <div class="grid grid-nogutter items-start justify-start flex-nowrap gap-3 mb-3 py-1">
46209
+ <div class="flex flex-wrap items-start justify-start flex-nowrap mb-3 py-1 gap-3">
46210
46210
  <!-- AVATAR -->
46211
46211
  <img class="w-20" [src]="node.data.avatar | safeUrl"/>
46212
46212
  <!-- CONTENT -->
46213
- <div class="col grid grid-nogutter flex-col items-start justify-start gap-2">
46213
+ <div class="flex-1 flex flex-wrap flex-col items-start justify-start gap-2">
46214
46214
  <!-- NAME AND DATE -->
46215
- <div class="grid grid-nogutter items-center justify-start gap-2">
46215
+ <div class="flex flex-wrap items-center justify-start gap-2">
46216
46216
  <!-- DISPLAY NAME -->
46217
46217
  <div class="font-bold leading-4">{{ node.data.displayName }}</div>
46218
46218
  <!-- DATE: lastUpdated → timestamp → date -->
@@ -46411,11 +46411,11 @@ class SmzCommentsSectionComponent {
46411
46411
  });
46412
46412
  }
46413
46413
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzCommentsSectionComponent, deps: [{ token: i1$3.Store }, { token: SmzDialogsService }], target: i0.ɵɵFactoryTarget.Component });
46414
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzCommentsSectionComponent, isStandalone: false, selector: "smz-comments-section", inputs: { state: "state" }, ngImport: i0, template: "<!-- COMENT\u00C1RIOS -->\r\n@if (state != null) {\r\n @if (comments$ | async; as comments) {\r\n <section class=\"col-12\" [ngClass]=\"{ 'lg:col-10 xl:col-6': !state.fullWidth }\">\r\n <div class=\"grid justify-between items-center\">\r\n <div class=\"col-6\">\r\n <h2>{{ state.locale.title }}</h2>\r\n @if (comments != null) {\r\n <p>{{ state.locale.updateMessage }}: {{ comments.lastUpdated | simpleCalendar : 'fromNow'}}</p>\r\n }\r\n </div>\r\n <div class=\"grid col-6 justify-end\">\r\n <button smzButton type=\"button\" class=\"mr-2\" [label]=\"state.locale.refreshButton\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" [label]=\"state.locale.createButton\" (click)=\"showCreateDialog(null)\" severity=\"success\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <smz-comments [data]=\"comments.items\" [state]=\"state\"></smz-comments>\r\n </div>\r\n </div>\r\n </section>\r\n } @else {\r\n <section class=\"col-12\" [ngClass]=\"{ 'lg:col-10 xl:col-6': !state.fullWidth }\">\r\n <div class=\"grid justify-between items-center\">\r\n <div class=\"col-6\">\r\n <h2>{{ state.locale.title }}</h2>\r\n </div>\r\n <div class=\"grid col-6 justify-end\">\r\n <button smzButton type=\"button\" label=\"CARREGAR COMENT\u00C1RIOS\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <p>{{ state.locale.emptyMessage }}</p>\r\n </div>\r\n </div>\r\n </section>\r\n }\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: SmzCommentsComponent, selector: "smz-comments", inputs: ["state", "data"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SimpleCalendarPipe, name: "simpleCalendar" }], encapsulation: i0.ViewEncapsulation.None });
46414
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzCommentsSectionComponent, isStandalone: false, selector: "smz-comments-section", inputs: { state: "state" }, ngImport: i0, template: "<!-- COMENT\u00C1RIOS -->\r\n@if (state != null) {\r\n @if (comments$ | async; as comments) {\r\n <section class=\"w-full flex-none p-2\" [ngClass]=\"{ 'lg:w-10/12 flex-none xl:w-6/12': !state.fullWidth }\">\r\n <div class=\"flex flex-wrap justify-between items-center -mt-2 -mx-2\">\r\n <div class=\"w-6/12 flex-none p-2\">\r\n <h2>{{ state.locale.title }}</h2>\r\n @if (comments != null) {\r\n <p>{{ state.locale.updateMessage }}: {{ comments.lastUpdated | simpleCalendar : 'fromNow'}}</p>\r\n }\r\n </div>\r\n <div class=\"flex flex-wrap w-6/12 flex-none justify-end p-2 -mt-2 -mx-2\">\r\n <button smzButton type=\"button\" class=\"mr-2\" [label]=\"state.locale.refreshButton\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" [label]=\"state.locale.createButton\" (click)=\"showCreateDialog(null)\" severity=\"success\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid grid-cols-12 gap-4 pb-2\">\r\n <div class=\"col-span-12 min-w-0\">\r\n <smz-comments [data]=\"comments.items\" [state]=\"state\"></smz-comments>\r\n </div>\r\n </div>\r\n </section>\r\n } @else {\r\n <section class=\"w-full flex-none p-2\" [ngClass]=\"{ 'lg:w-10/12 flex-none xl:w-6/12': !state.fullWidth }\">\r\n <div class=\"flex flex-wrap justify-between items-center -mt-2 -mx-2\">\r\n <div class=\"w-6/12 flex-none p-2\">\r\n <h2>{{ state.locale.title }}</h2>\r\n </div>\r\n <div class=\"flex flex-wrap w-6/12 flex-none justify-end p-2 -mt-2 -mx-2\">\r\n <button smzButton type=\"button\" label=\"CARREGAR COMENT\u00C1RIOS\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid grid-cols-12 gap-4 pb-2\">\r\n <div class=\"col-span-12 min-w-0\">\r\n <p>{{ state.locale.emptyMessage }}</p>\r\n </div>\r\n </div>\r\n </section>\r\n }\r\n}", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: SmzCommentsComponent, selector: "smz-comments", inputs: ["state", "data"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SimpleCalendarPipe, name: "simpleCalendar" }], encapsulation: i0.ViewEncapsulation.None });
46415
46415
  }
46416
46416
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzCommentsSectionComponent, decorators: [{
46417
46417
  type: Component,
46418
- args: [{ selector: 'smz-comments-section', encapsulation: ViewEncapsulation.None, standalone: false, template: "<!-- COMENT\u00C1RIOS -->\r\n@if (state != null) {\r\n @if (comments$ | async; as comments) {\r\n <section class=\"col-12\" [ngClass]=\"{ 'lg:col-10 xl:col-6': !state.fullWidth }\">\r\n <div class=\"grid justify-between items-center\">\r\n <div class=\"col-6\">\r\n <h2>{{ state.locale.title }}</h2>\r\n @if (comments != null) {\r\n <p>{{ state.locale.updateMessage }}: {{ comments.lastUpdated | simpleCalendar : 'fromNow'}}</p>\r\n }\r\n </div>\r\n <div class=\"grid col-6 justify-end\">\r\n <button smzButton type=\"button\" class=\"mr-2\" [label]=\"state.locale.refreshButton\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" [label]=\"state.locale.createButton\" (click)=\"showCreateDialog(null)\" severity=\"success\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <smz-comments [data]=\"comments.items\" [state]=\"state\"></smz-comments>\r\n </div>\r\n </div>\r\n </section>\r\n } @else {\r\n <section class=\"col-12\" [ngClass]=\"{ 'lg:col-10 xl:col-6': !state.fullWidth }\">\r\n <div class=\"grid justify-between items-center\">\r\n <div class=\"col-6\">\r\n <h2>{{ state.locale.title }}</h2>\r\n </div>\r\n <div class=\"grid col-6 justify-end\">\r\n <button smzButton type=\"button\" label=\"CARREGAR COMENT\u00C1RIOS\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid\">\r\n <div class=\"col-12\">\r\n <p>{{ state.locale.emptyMessage }}</p>\r\n </div>\r\n </div>\r\n </section>\r\n }\r\n}" }]
46418
+ args: [{ selector: 'smz-comments-section', encapsulation: ViewEncapsulation.None, standalone: false, template: "<!-- COMENT\u00C1RIOS -->\r\n@if (state != null) {\r\n @if (comments$ | async; as comments) {\r\n <section class=\"w-full flex-none p-2\" [ngClass]=\"{ 'lg:w-10/12 flex-none xl:w-6/12': !state.fullWidth }\">\r\n <div class=\"flex flex-wrap justify-between items-center -mt-2 -mx-2\">\r\n <div class=\"w-6/12 flex-none p-2\">\r\n <h2>{{ state.locale.title }}</h2>\r\n @if (comments != null) {\r\n <p>{{ state.locale.updateMessage }}: {{ comments.lastUpdated | simpleCalendar : 'fromNow'}}</p>\r\n }\r\n </div>\r\n <div class=\"flex flex-wrap w-6/12 flex-none justify-end p-2 -mt-2 -mx-2\">\r\n <button smzButton type=\"button\" class=\"mr-2\" [label]=\"state.locale.refreshButton\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n <button smzButton type=\"button\" [label]=\"state.locale.createButton\" (click)=\"showCreateDialog(null)\" severity=\"success\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid grid-cols-12 gap-4 pb-2\">\r\n <div class=\"col-span-12 min-w-0\">\r\n <smz-comments [data]=\"comments.items\" [state]=\"state\"></smz-comments>\r\n </div>\r\n </div>\r\n </section>\r\n } @else {\r\n <section class=\"w-full flex-none p-2\" [ngClass]=\"{ 'lg:w-10/12 flex-none xl:w-6/12': !state.fullWidth }\">\r\n <div class=\"flex flex-wrap justify-between items-center -mt-2 -mx-2\">\r\n <div class=\"w-6/12 flex-none p-2\">\r\n <h2>{{ state.locale.title }}</h2>\r\n </div>\r\n <div class=\"flex flex-wrap w-6/12 flex-none justify-end p-2 -mt-2 -mx-2\">\r\n <button smzButton type=\"button\" label=\"CARREGAR COMENT\u00C1RIOS\" (click)=\"loadComments()\" variant=\"outlined\"></button>\r\n </div>\r\n </div>\r\n <div class=\"grid grid-cols-12 gap-4 pb-2\">\r\n <div class=\"col-span-12 min-w-0\">\r\n <p>{{ state.locale.emptyMessage }}</p>\r\n </div>\r\n </div>\r\n </section>\r\n }\r\n}" }]
46419
46419
  }], ctorParameters: () => [{ type: i1$3.Store }, { type: SmzDialogsService }], propDecorators: { state: [{
46420
46420
  type: Input
46421
46421
  }] } });
@@ -47418,11 +47418,11 @@ class SmzImageWithDetailsTypeComponent {
47418
47418
  SmzCardsTextContent;
47419
47419
  modes = SmzCardsView;
47420
47420
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzImageWithDetailsTypeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47421
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzImageWithDetailsTypeComponent, isStandalone: false, selector: "smz-image-with-details-type", inputs: { template: "template", data: "data", mode: "mode", isDebug: "isDebug", buttons: "buttons", menu: "menu" }, ngImport: i0, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-2 relative\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : ''\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n <div class=\"grid grid-nogutter flex-col items-start justify-start gap-2 col\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInGrid) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.title.styleClass ?? 'font-bold')\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.subTitle.styleClass ?? 'text-sm')\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInGrid) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.conditionalStyleClass != null ? other.conditionalStyleClass(data) : (other.styleClass ?? 'text-sm')\"></div>\r\n }\r\n }\r\n <div class=\"col\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"grid grid-nogutter items-start justify-start gap-4 relative col\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.listStyleClass\"\r\n >\r\n }\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-2 relative col\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInList) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded'\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInList) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.styleClass ?? 'text-sm'\"></div>\r\n }\r\n }\r\n <div class=\"col\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: ServerImageDirective, selector: "img[serverImage]", inputs: ["src", "path", "placeholder", "errorPlaceholder", "maximize", "openMaximized", "title", "useServerPath"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: SmzCardsContentSelectorDirective, selector: "div[contentSelector]", inputs: ["content", "data", "callback"] }, { kind: "directive", type: ButtonActionsDirective, selector: "[buttonAction]", inputs: ["item", "data"] }, { kind: "directive", type: SmzInjectDataPathComponent, selector: "[smzInjectDataPathComponent]", inputs: ["smzInjectDataPathComponent", "data", "state"] }, { kind: "pipe", type: SmzCardsContentPipe, name: "cardsContent" }, { kind: "pipe", type: SmzCardsTransformContentPipe, name: "transformContent" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47421
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzImageWithDetailsTypeComponent, isStandalone: false, selector: "smz-image-with-details-type", inputs: { template: "template", data: "data", mode: "mode", isDebug: "isDebug", buttons: "buttons", menu: "menu" }, ngImport: i0, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative gap-2\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : ''\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n <div class=\"flex flex-wrap flex-col items-start justify-start flex-1 gap-2\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInGrid) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.title.styleClass ?? 'font-bold')\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.subTitle.styleClass ?? 'text-sm')\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInGrid) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.conditionalStyleClass != null ? other.conditionalStyleClass(data) : (other.styleClass ?? 'text-sm')\"></div>\r\n }\r\n }\r\n <div class=\"flex-1\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"flex flex-wrap items-start justify-start relative flex-1 basis-0 gap-4 p-2\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.listStyleClass\"\r\n >\r\n }\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative flex-1 gap-2\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInList) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded'\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInList) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.styleClass ?? 'text-sm'\"></div>\r\n }\r\n }\r\n <div class=\"flex-1\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: ServerImageDirective, selector: "img[serverImage]", inputs: ["src", "path", "placeholder", "errorPlaceholder", "maximize", "openMaximized", "title", "useServerPath"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: SmzCardsContentSelectorDirective, selector: "div[contentSelector]", inputs: ["content", "data", "callback"] }, { kind: "directive", type: ButtonActionsDirective, selector: "[buttonAction]", inputs: ["item", "data"] }, { kind: "directive", type: SmzInjectDataPathComponent, selector: "[smzInjectDataPathComponent]", inputs: ["smzInjectDataPathComponent", "data", "state"] }, { kind: "pipe", type: SmzCardsContentPipe, name: "cardsContent" }, { kind: "pipe", type: SmzCardsTransformContentPipe, name: "transformContent" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47422
47422
  }
47423
47423
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzImageWithDetailsTypeComponent, decorators: [{
47424
47424
  type: Component,
47425
- args: [{ selector: 'smz-image-with-details-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-2 relative\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : ''\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n <div class=\"grid grid-nogutter flex-col items-start justify-start gap-2 col\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInGrid) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.title.styleClass ?? 'font-bold')\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.subTitle.styleClass ?? 'text-sm')\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInGrid) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.conditionalStyleClass != null ? other.conditionalStyleClass(data) : (other.styleClass ?? 'text-sm')\"></div>\r\n }\r\n }\r\n <div class=\"col\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"grid grid-nogutter items-start justify-start gap-4 relative col\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.listStyleClass\"\r\n >\r\n }\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-2 relative col\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInList) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded'\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInList) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.styleClass ?? 'text-sm'\"></div>\r\n }\r\n }\r\n <div class=\"col\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n" }]
47425
+ args: [{ selector: 'smz-image-with-details-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative gap-2\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : ''\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n <div class=\"flex flex-wrap flex-col items-start justify-start flex-1 gap-2\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInGrid) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.title.styleClass ?? 'font-bold')\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.title.conditionalStyleClass != null ? template.title.conditionalStyleClass(data) : (template.subTitle.styleClass ?? 'text-sm')\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInGrid) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.conditionalStyleClass != null ? other.conditionalStyleClass(data) : (other.styleClass ?? 'text-sm')\"></div>\r\n }\r\n }\r\n <div class=\"flex-1\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"flex flex-wrap items-start justify-start relative flex-1 basis-0 gap-4 p-2\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- IMAGE -->\r\n @if (template.image | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n [ngClass]=\"image.listStyleClass\"\r\n >\r\n }\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative flex-1 gap-2\" [ngClass]=\"template.contentStyleClass\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.hideInList) {\r\n <div contentSelector [content]=\"template.title\" [data]=\"data\" [ngClass]=\"template.title.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start gap-2\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded'\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- COMPONENTS -->\r\n @for (component of template.components; track component) {\r\n <ng-template [smzInjectDataPathComponent]=\"component.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n <!-- OTHERS -->\r\n @for (other of template.others; track other) {\r\n @if (!other.hideInList) {\r\n <div contentSelector [content]=\"other\" [data]=\"data\" [ngClass]=\"other.styleClass ?? 'text-sm'\"></div>\r\n }\r\n }\r\n <div class=\"flex-1\"></div>\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n" }]
47426
47426
  }], propDecorators: { template: [{
47427
47427
  type: Input
47428
47428
  }], data: [{
@@ -47451,11 +47451,11 @@ class SmzInfoATypeComponent {
47451
47451
  ngOnInit() {
47452
47452
  }
47453
47453
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzInfoATypeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47454
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzInfoATypeComponent, isStandalone: false, selector: "smz-info-a-type", inputs: { template: "template", data: "data", mode: "mode", isDebug: "isDebug", buttons: "buttons", menu: "menu" }, ngImport: i0, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-0 relative rounded-lg p-3 border-0 border-l-8\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInGrid) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" class=\"\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInGrid) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2 mr-3\">\r\n <div class=\"rounded-2xl h-4 w-4\" [ngClass]=\"info.bulletStyleClass ?? 'bg-gray-200'\"></div>\r\n <div class=\"grid grid-nogutter flex-col items-start justify-start gap-0\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"col mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-0 relative rounded-lg p-3 border-0 border-l-8 col\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInList) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInList) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2 mr-3\">\r\n <div class=\"rounded-2xl h-4 w-4 bg-gray-200\" [ngClass]=\"info.bulletStyleClass\"></div>\r\n <div class=\"grid grid-nogutter flex-col items-start justify-start gap-0\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"col mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n}\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: SmzCardsContentSelectorDirective, selector: "div[contentSelector]", inputs: ["content", "data", "callback"] }, { kind: "directive", type: ButtonActionsDirective, selector: "[buttonAction]", inputs: ["item", "data"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47454
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzInfoATypeComponent, isStandalone: false, selector: "smz-info-a-type", inputs: { template: "template", data: "data", mode: "mode", isDebug: "isDebug", buttons: "buttons", menu: "menu" }, ngImport: i0, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative rounded-lg p-3 border-0 border-l-8\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInGrid) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" class=\"\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInGrid) {\r\n <div class=\"flex flex-wrap items-center justify-start mr-3 gap-2\">\r\n <div class=\"rounded-2xl h-4 w-4\" [ngClass]=\"info.bulletStyleClass ?? 'bg-gray-200'\"></div>\r\n <div class=\"flex flex-wrap flex-col items-start justify-start\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"flex-1 mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative rounded-lg p-3 border-0 border-l-8 flex-1 basis-0\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInList) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInList) {\r\n <div class=\"flex flex-wrap items-center justify-start mr-3 gap-2\">\r\n <div class=\"rounded-2xl h-4 w-4 bg-gray-200\" [ngClass]=\"info.bulletStyleClass\"></div>\r\n <div class=\"flex flex-wrap flex-col items-start justify-start\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"flex-1 mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n}\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: SmzCardsContentSelectorDirective, selector: "div[contentSelector]", inputs: ["content", "data", "callback"] }, { kind: "directive", type: ButtonActionsDirective, selector: "[buttonAction]", inputs: ["item", "data"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
47455
47455
  }
47456
47456
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzInfoATypeComponent, decorators: [{
47457
47457
  type: Component,
47458
- args: [{ selector: 'smz-info-a-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-0 relative rounded-lg p-3 border-0 border-l-8\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInGrid) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" class=\"\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInGrid) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2 mr-3\">\r\n <div class=\"rounded-2xl h-4 w-4\" [ngClass]=\"info.bulletStyleClass ?? 'bg-gray-200'\"></div>\r\n <div class=\"grid grid-nogutter flex-col items-start justify-start gap-0\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"col mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"h-full grid grid-nogutter flex-col items-start justify-start gap-0 relative rounded-lg p-3 border-0 border-l-8 col\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInList) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"col-12 grid grid-nogutter items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInList) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2 mr-3\">\r\n <div class=\"rounded-2xl h-4 w-4 bg-gray-200\" [ngClass]=\"info.bulletStyleClass\"></div>\r\n <div class=\"grid grid-nogutter flex-col items-start justify-start gap-0\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"col mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"grid grid-nogutter items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n}\r\n" }]
47458
+ args: [{ selector: 'smz-info-a-type', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative rounded-lg p-3 border-0 border-l-8\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInGrid) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInGrid) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInGrid) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" class=\"\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInGrid) {\r\n <div class=\"flex flex-wrap items-center justify-start mr-3 gap-2\">\r\n <div class=\"rounded-2xl h-4 w-4\" [ngClass]=\"info.bulletStyleClass ?? 'bg-gray-200'\"></div>\r\n <div class=\"flex flex-wrap flex-col items-start justify-start\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"flex-1 mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n @case (modes.LIST) {\r\n <div class=\"h-full flex flex-wrap flex-col items-start justify-start relative rounded-lg p-3 border-0 border-l-8 flex-1 basis-0\" [ngClass]=\"template.cardStyleClass + ' ' + template.verticalBarStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <!-- TITLE -->\r\n @if (template.title && !template.title.content.hideInList) {\r\n <div class=\"text-xs text-surface-600\">{{ template.title.caption }}</div>\r\n <div contentSelector [content]=\"template.title.content\" [data]=\"data\" [ngClass]=\"template.title.content.styleClass ?? 'font-bold'\"></div>\r\n }\r\n <!-- SUBTITLE -->\r\n @if (template.subTitle && !template.subTitle.hideInList) {\r\n <div contentSelector [content]=\"template.subTitle\" [data]=\"data\" class=\"mt-1\" [ngClass]=\"template.subTitle.styleClass ?? 'text-sm'\"></div>\r\n }\r\n <!-- TAGS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.tagsContainerStyleClass\">\r\n @for (tag of template.tags; track tag) {\r\n @if (!tag.hideInList) {\r\n <div contentSelector [content]=\"tag\" [data]=\"data\" [ngClass]=\"tag.conditionalStyleClass != null ? tag.conditionalStyleClass(data) : (tag.styleClass ?? 'px-2 py-1 text-sm bg-gray-200 text-surface-50 rounded')\"></div>\r\n }\r\n }\r\n </div>\r\n <!-- INFOS -->\r\n <div class=\"w-full flex-none flex flex-wrap items-center justify-start\" [ngClass]=\"template.infosContainerStyleClass\">\r\n @for (info of template.infos; track info) {\r\n @if (!info.content.hideInList) {\r\n <div class=\"flex flex-wrap items-center justify-start mr-3 gap-2\">\r\n <div class=\"rounded-2xl h-4 w-4 bg-gray-200\" [ngClass]=\"info.bulletStyleClass\"></div>\r\n <div class=\"flex flex-wrap flex-col items-start justify-start\">\r\n <div class=\"text-xs text-surface-600\">{{ info.caption }}</div>\r\n <div contentSelector [content]=\"info.content\" [data]=\"data\" class=\"\" [ngClass]=\"info.content.styleClass ?? 'text-sm'\"></div>\r\n </div>\r\n </div>\r\n }\r\n }\r\n </div>\r\n <div class=\"flex-1 mt-2\"></div>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1\">\r\n <smz-menu [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttons) {\r\n <div class=\"flex flex-wrap items-center justify-start gap-1\">\r\n @for (button of buttons; track button; let i = $index) {\r\n @if (button.visible) {\r\n <button smzButton type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass\" variant=\"outlined\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n}\r\n" }]
47459
47459
  }], ctorParameters: () => [], propDecorators: { template: [{
47460
47460
  type: Input
47461
47461
  }], data: [{
@@ -47493,11 +47493,11 @@ class SmzFlipCardTypeComponent {
47493
47493
  this.template.onChange(changes);
47494
47494
  }
47495
47495
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzFlipCardTypeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47496
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzFlipCardTypeComponent, isStandalone: false, selector: "smz-flip-card-type", inputs: { template: "template", data: "data", mode: "mode", isDebug: "isDebug", buttons: "buttons", menu: "menu" }, ngImport: i0, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <ng-container *ngVar=\"template._context.getFlipState(data) as status\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-center relative select-none\">\r\n <div class=\"relative\" [ngStyle]=\"{ width: template.width, height: template.height}\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <div class=\"cmp-card w-full h-full\" [ngClass]=\"{ 'cmp-card-flipped': status === 'back', 'cursor-pointer': template.back != null }\" (click)=\"flip()\">\r\n <div class=\"cmp-content\">\r\n <div class=\"cmp-front\">\r\n @if (status === 'front') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.front.image; as frontImage) {\r\n @if (frontImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.front.component; as frontComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"frontComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.front.html; as frontHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"frontHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n <div class=\"cmp-back\">\r\n @if (status === 'back') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.back.image; as backImage) {\r\n @if (backImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.back.component; as backComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"backComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.back.html; as backHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"backHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n }\r\n @case (modes.LIST) {\r\n }\r\n }\r\n\r\n <ng-template #buttonsTemplate let-template>\r\n <div class=\"absolute bottom-0 inset-x-0\">\r\n <div class=\"grid grid-nogutter flex-col items-start justify-center gap-2 col\" [ngClass]=\"template.contentStyleClass\">\r\n\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttonsData) {\r\n <div class=\"w-full grid grid-nogutter items-center justify-center gap-1\">\r\n @for (button of buttonsData; track button; let i = $index) {\r\n 1\r\n @if (button.visible) {\r\n <button smzButton clickStopPropagation type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass + ' ' + buttons.styleClass\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #menuTemplate let-template>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu clickStopPropagation [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </ng-template>", styles: ["smz-flip-card-type .cmp-card{perspective:500px}smz-flip-card-type .cmp-content{position:absolute;width:100%;height:100%;transition:transform .2s;transform-style:preserve-3d}smz-flip-card-type .cmp-card-flipped .cmp-content{transform:rotateY(180deg);transition:transform .2s}smz-flip-card-type .cmp-front,smz-flip-card-type .cmp-back{position:absolute;height:100%;width:100%;backface-visibility:hidden}smz-flip-card-type .cmp-back{transform:rotateY(180deg)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: ServerImageDirective, selector: "img[serverImage]", inputs: ["src", "path", "placeholder", "errorPlaceholder", "maximize", "openMaximized", "title", "useServerPath"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "directive", type: ButtonActionsDirective, selector: "[buttonAction]", inputs: ["item", "data"] }, { kind: "directive", type: SmzInjectDataPathComponent, selector: "[smzInjectDataPathComponent]", inputs: ["smzInjectDataPathComponent", "data", "state"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzCardsContentPipe, name: "cardsContent" }, { kind: "pipe", type: SmzCardsTransformContentPipe, name: "transformContent" }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None });
47496
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzFlipCardTypeComponent, isStandalone: false, selector: "smz-flip-card-type", inputs: { template: "template", data: "data", mode: "mode", isDebug: "isDebug", buttons: "buttons", menu: "menu" }, ngImport: i0, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <ng-container *ngVar=\"template._context.getFlipState(data) as status\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-center relative select-none\">\r\n <div class=\"relative\" [ngStyle]=\"{ width: template.width, height: template.height}\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <div class=\"cmp-card w-full h-full\" [ngClass]=\"{ 'cmp-card-flipped': status === 'back', 'cursor-pointer': template.back != null }\" (click)=\"flip()\">\r\n <div class=\"cmp-content\">\r\n <div class=\"cmp-front\">\r\n @if (status === 'front') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.front.image; as frontImage) {\r\n @if (frontImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.front.component; as frontComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"frontComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.front.html; as frontHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"frontHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n <div class=\"cmp-back\">\r\n @if (status === 'back') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.back.image; as backImage) {\r\n @if (backImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.back.component; as backComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"backComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.back.html; as backHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"backHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n }\r\n @case (modes.LIST) {\r\n }\r\n }\r\n\r\n <ng-template #buttonsTemplate let-template>\r\n <div class=\"absolute bottom-0 inset-x-0\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-center flex-1 basis-0 gap-2 p-2\" [ngClass]=\"template.contentStyleClass\">\r\n\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttonsData) {\r\n <div class=\"w-full flex flex-wrap items-center justify-center gap-1\">\r\n @for (button of buttonsData; track button; let i = $index) {\r\n 1\r\n @if (button.visible) {\r\n <button smzButton clickStopPropagation type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass + ' ' + buttons.styleClass\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #menuTemplate let-template>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1 p-2\">\r\n <smz-menu clickStopPropagation [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </ng-template>", styles: ["smz-flip-card-type .cmp-card{perspective:500px}smz-flip-card-type .cmp-content{position:absolute;width:100%;height:100%;transition:transform .2s;transform-style:preserve-3d}smz-flip-card-type .cmp-card-flipped .cmp-content{transform:rotateY(180deg);transition:transform .2s}smz-flip-card-type .cmp-front,smz-flip-card-type .cmp-back{position:absolute;height:100%;width:100%;backface-visibility:hidden}smz-flip-card-type .cmp-back{transform:rotateY(180deg)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.SmzButtonComponent, selector: "button[smzButton], a[smzButton]", inputs: ["label", "icon", "iconPosition", "severity", "variant", "size", "text", "outlined", "rounded", "loading", "styleClass"] }, { kind: "directive", type: ServerImageDirective, selector: "img[serverImage]", inputs: ["src", "path", "placeholder", "errorPlaceholder", "maximize", "openMaximized", "title", "useServerPath"] }, { kind: "component", type: SmzMenuComponent, selector: "smz-menu", inputs: ["items", "callback", "data", "buttonClass", "styleClass", "icon", "behavior", "testId"] }, { kind: "directive", type: i2.SmzTooltipDirective, selector: "[smzTooltip]", inputs: ["smzTooltip", "tooltipPosition", "showDelay", "hideDelay", "tooltipEvent", "escape", "tooltipStyleClass", "tooltipZIndex", "tooltipDisabled", "tooltipOptions", "appendTo"] }, { kind: "directive", type: ClickStopPropagationDirective, selector: "[clickStopPropagation]" }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "directive", type: ButtonActionsDirective, selector: "[buttonAction]", inputs: ["item", "data"] }, { kind: "directive", type: SmzInjectDataPathComponent, selector: "[smzInjectDataPathComponent]", inputs: ["smzInjectDataPathComponent", "data", "state"] }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzCardsContentPipe, name: "cardsContent" }, { kind: "pipe", type: SmzCardsTransformContentPipe, name: "transformContent" }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None });
47497
47497
  }
47498
47498
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzFlipCardTypeComponent, decorators: [{
47499
47499
  type: Component,
47500
- args: [{ selector: 'smz-flip-card-type', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, standalone: false, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <ng-container *ngVar=\"template._context.getFlipState(data) as status\">\r\n <div class=\"w-full h-full grid grid-nogutter items-center justify-center relative select-none\">\r\n <div class=\"relative\" [ngStyle]=\"{ width: template.width, height: template.height}\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <div class=\"cmp-card w-full h-full\" [ngClass]=\"{ 'cmp-card-flipped': status === 'back', 'cursor-pointer': template.back != null }\" (click)=\"flip()\">\r\n <div class=\"cmp-content\">\r\n <div class=\"cmp-front\">\r\n @if (status === 'front') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.front.image; as frontImage) {\r\n @if (frontImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.front.component; as frontComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"frontComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.front.html; as frontHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"frontHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n <div class=\"cmp-back\">\r\n @if (status === 'back') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.back.image; as backImage) {\r\n @if (backImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.back.component; as backComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"backComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.back.html; as backHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"backHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n }\r\n @case (modes.LIST) {\r\n }\r\n }\r\n\r\n <ng-template #buttonsTemplate let-template>\r\n <div class=\"absolute bottom-0 inset-x-0\">\r\n <div class=\"grid grid-nogutter flex-col items-start justify-center gap-2 col\" [ngClass]=\"template.contentStyleClass\">\r\n\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttonsData) {\r\n <div class=\"w-full grid grid-nogutter items-center justify-center gap-1\">\r\n @for (button of buttonsData; track button; let i = $index) {\r\n 1\r\n @if (button.visible) {\r\n <button smzButton clickStopPropagation type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass + ' ' + buttons.styleClass\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #menuTemplate let-template>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"grid grid-nogutter items-center justify-end gap-1 col-12 absolute top-2 right-2\">\r\n <smz-menu clickStopPropagation [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </ng-template>", styles: ["smz-flip-card-type .cmp-card{perspective:500px}smz-flip-card-type .cmp-content{position:absolute;width:100%;height:100%;transition:transform .2s;transform-style:preserve-3d}smz-flip-card-type .cmp-card-flipped .cmp-content{transform:rotateY(180deg);transition:transform .2s}smz-flip-card-type .cmp-front,smz-flip-card-type .cmp-back{position:absolute;height:100%;width:100%;backface-visibility:hidden}smz-flip-card-type .cmp-back{transform:rotateY(180deg)}\n"] }]
47500
+ args: [{ selector: 'smz-flip-card-type', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, standalone: false, template: "\r\n@switch (mode) {\r\n @case (modes.GRID) {\r\n <ng-container *ngVar=\"template._context.getFlipState(data) as status\">\r\n <div class=\"w-full h-full flex flex-wrap items-center justify-center relative select-none\">\r\n <div class=\"relative\" [ngStyle]=\"{ width: template.width, height: template.height}\" [ngClass]=\"template.cardStyleClass + (isDebug ? ' border border-red-500 border-solid' : '')\">\r\n <div class=\"cmp-card w-full h-full\" [ngClass]=\"{ 'cmp-card-flipped': status === 'back', 'cursor-pointer': template.back != null }\" (click)=\"flip()\">\r\n <div class=\"cmp-content\">\r\n <div class=\"cmp-front\">\r\n @if (status === 'front') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.front.image; as frontImage) {\r\n @if (frontImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.front.component; as frontComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"frontComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.front.html; as frontHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"frontHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'front') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n <div class=\"cmp-back\">\r\n @if (status === 'back') {\r\n <!-- FRONT IMAGE -->\r\n @if (template.back.image; as backImage) {\r\n @if (backImage | transformContent : data; as image) {\r\n <img\r\n serverImage\r\n [path]=\"image.transform.override ? image.transform.override.dataPath : (data | cardsContent : image.dataPath).result\"\r\n [maximize]=\"image.maximize\"\r\n [openMaximized]=\"image.openMaximized\"\r\n [placeholder]=\"'assets/images/placeholder.jpeg'\"\r\n [title]=\"image.title.isVisible ? image.title.getText(data) : null\"\r\n [useServerPath]=\"image.useServerPath\"\r\n draggable=\"false\"\r\n [ngClass]=\"image.gridStyleClass\"\r\n >\r\n }\r\n }\r\n @if (template.back.component; as backComponent) {\r\n <ng-template [smzInjectDataPathComponent]=\"backComponent.componentData\" [data]=\"data\" [state]=\"template._context\"></ng-template>\r\n }\r\n @if (template.back.html; as backHtml) {\r\n <div class=\"w-full h-full\" [innerHTML]=\"backHtml | safeHtml\"></div>\r\n }\r\n @if (template.buttonsLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"buttonsTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n @if (template.menuLocation === 'back') {\r\n <ng-container *ngTemplateOutlet=\"menuTemplate; context: { $implicit: template }\"></ng-container>\r\n }\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n }\r\n @case (modes.LIST) {\r\n }\r\n }\r\n\r\n <ng-template #buttonsTemplate let-template>\r\n <div class=\"absolute bottom-0 inset-x-0\">\r\n <div class=\"flex flex-wrap flex-col items-start justify-center flex-1 basis-0 gap-2 p-2\" [ngClass]=\"template.contentStyleClass\">\r\n\r\n <!-- BUTTONS -->\r\n @if (buttons.callback != null && buttons.callback(data); as buttonsData) {\r\n <div class=\"w-full flex flex-wrap items-center justify-center gap-1\">\r\n @for (button of buttonsData; track button; let i = $index) {\r\n 1\r\n @if (button.visible) {\r\n <button smzButton clickStopPropagation type=\"button\" buttonAction [item]=\"button\" [data]=\"data\" [label]=\"button.label\" [icon]=\"button.icon\" [disabled]=\"button.disabled\" [smzTooltip]=\"button.tooltip\" class=\"px-3 py-2\" [styleClass]=\"button.styleClass + ' ' + buttons.styleClass\" size=\"sm\"></button>\r\n }\r\n }\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #menuTemplate let-template>\r\n <!-- MENU -->\r\n @if (menu.callback != null && menu.callback(data); as menuItem) {\r\n <div class=\"flex flex-wrap items-center justify-end w-full flex-none absolute top-2 right-2 gap-1 p-2\">\r\n <smz-menu clickStopPropagation [items]=\"menuItem\" [data]=\"data\" [icon]=\"menu.icon\" [styleClass]=\"menu.styleClass\" [buttonClass]=\"menu.buttonClass\"></smz-menu>\r\n </div>\r\n }\r\n </ng-template>", styles: ["smz-flip-card-type .cmp-card{perspective:500px}smz-flip-card-type .cmp-content{position:absolute;width:100%;height:100%;transition:transform .2s;transform-style:preserve-3d}smz-flip-card-type .cmp-card-flipped .cmp-content{transform:rotateY(180deg);transition:transform .2s}smz-flip-card-type .cmp-front,smz-flip-card-type .cmp-back{position:absolute;height:100%;width:100%;backface-visibility:hidden}smz-flip-card-type .cmp-back{transform:rotateY(180deg)}\n"] }]
47501
47501
  }], ctorParameters: () => [], propDecorators: { template: [{
47502
47502
  type: Input
47503
47503
  }], data: [{
@@ -47639,11 +47639,11 @@ class SmzCardsComponent {
47639
47639
  this.cdr.markForCheck();
47640
47640
  }
47641
47641
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzCardsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47642
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzCardsComponent, isStandalone: false, selector: "smz-ui-cards", inputs: { state: "state" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "dataView", first: true, predicate: SmzDataViewComponent, descendants: true }], ngImport: i0, template: "@if (state != null) {\r\n <ng-container *ngVar=\"state.items$ | async as items\">\r\n <ng-container *ngVar=\"items | resetContext : state.template._context\">\r\n <ui-data-view #dataView [styleClass]=\"state.view.dataViewStyleClass\" [gridStyleClass]=\"state.view.gridStyleClass\" [value]=\"items ?? []\" [paginator]=\"state.view.paginator\" [rows]=\"state.view.rowsPerPage\" [filterBy]=\"state.view.filterBy\" [layout]=\"state.view.layout\">\r\n @if (state.view.showHeader) {\r\n <ng-template #header>\r\n <div class=\"grid grid-nogutter lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between gap-2\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"grid grid-nogutter items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n <ui-icon-field class=\"p-input-icon-left mb-2 md:mb-0\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input type=\"search\" smzInputText [placeholder]=\"state.locale.globalSearch.placeholder\" (input)=\"dataView.filter($any($event.target).value)\">\r\n </ui-icon-field>\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n <!-- FIXME: Implementar -->\r\n <!-- <p-dataViewLayoutOptions *ngIf=\"state.view.showLayoutOptions\"></p-dataViewLayoutOptions> -->\r\n </div>\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-items #list>\r\n @if (state.template != null) {\r\n <div class=\"grid grid-nogutter\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n <smz-list-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.list.styleClass.all\"></smz-list-item>\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template let-items #grid>\r\n @if (state.template != null) {\r\n <div class=\"grid grid-nogutter\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.grid.styleClass.all\"></smz-grid-item>\r\n }\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template #empty>\r\n @if (state.view.emptyMessageType === 'html') {\r\n <div [innerHTML]=\"state.locale.emptyMessage | safeHtml\" class=\"w-full h-full\"></div>\r\n }\r\n @if (state.view.emptyMessageType === 'component') {\r\n <ng-template [smzInjectDataPathComponent]=\"state.view.emptyMessageComponent\" [data]=\"items\" [state]=\"state\"></ng-template>\r\n }\r\n </ng-template>\r\n </ui-data-view>\r\n </ng-container>\r\n </ng-container>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.SmzDataViewComponent, selector: "ui-data-view", inputs: ["value", "layout", "paginator", "rows", "first", "filterBy", "styleClass", "gridStyleClass"], outputs: ["firstChange"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "component", type: i2.SmzIconFieldComponent, selector: "ui-icon-field" }, { kind: "component", type: i2.SmzInputIconComponent, selector: "ui-input-icon", inputs: ["styleClass"] }, { kind: "component", type: SmzListItemComponent, selector: "smz-list-item", inputs: ["isDebug", "template", "buttons", "menu", "data"] }, { kind: "component", type: SmzGridItemComponent, selector: "smz-grid-item", inputs: ["isDebug", "template", "buttons", "menu", "data"] }, { kind: "directive", type: SmzInjectDataPathComponent, selector: "[smzInjectDataPathComponent]", inputs: ["smzInjectDataPathComponent", "data", "state"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzCardsResetContextPipe, name: "resetContext" }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None });
47642
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzCardsComponent, isStandalone: false, selector: "smz-ui-cards", inputs: { state: "state" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], viewQueries: [{ propertyName: "dataView", first: true, predicate: SmzDataViewComponent, descendants: true }], ngImport: i0, template: "@if (state != null) {\r\n <ng-container *ngVar=\"state.items$ | async as items\">\r\n <ng-container *ngVar=\"items | resetContext : state.template._context\">\r\n <ui-data-view #dataView [styleClass]=\"state.view.dataViewStyleClass\" [gridStyleClass]=\"state.view.gridStyleClass\" [value]=\"items ?? []\" [paginator]=\"state.view.paginator\" [rows]=\"state.view.rowsPerPage\" [filterBy]=\"state.view.filterBy\" [layout]=\"state.view.layout\">\r\n @if (state.view.showHeader) {\r\n <ng-template #header>\r\n <div class=\"flex flex-wrap lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between gap-2\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"flex flex-wrap items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n <ui-icon-field class=\"p-input-icon-left mb-2 md:mb-0\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input type=\"search\" smzInputText [placeholder]=\"state.locale.globalSearch.placeholder\" (input)=\"dataView.filter($any($event.target).value)\">\r\n </ui-icon-field>\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n <!-- FIXME: Implementar -->\r\n <!-- <p-dataViewLayoutOptions *ngIf=\"state.view.showLayoutOptions\"></p-dataViewLayoutOptions> -->\r\n </div>\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-items #list>\r\n @if (state.template != null) {\r\n <div class=\"flex flex-wrap\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n <smz-list-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.list.styleClass.all\"></smz-list-item>\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template let-items #grid>\r\n @if (state.template != null) {\r\n <div class=\"flex flex-wrap\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.grid.styleClass.all\"></smz-grid-item>\r\n }\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template #empty>\r\n @if (state.view.emptyMessageType === 'html') {\r\n <div [innerHTML]=\"state.locale.emptyMessage | safeHtml\" class=\"w-full h-full\"></div>\r\n }\r\n @if (state.view.emptyMessageType === 'component') {\r\n <ng-template [smzInjectDataPathComponent]=\"state.view.emptyMessageComponent\" [data]=\"items\" [state]=\"state\"></ng-template>\r\n }\r\n </ng-template>\r\n </ui-data-view>\r\n </ng-container>\r\n </ng-container>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.SmzDataViewComponent, selector: "ui-data-view", inputs: ["value", "layout", "paginator", "rows", "first", "filterBy", "styleClass", "gridStyleClass"], outputs: ["firstChange"] }, { kind: "directive", type: i2.SmzInputTextDirective, selector: "input[smzInputText]", inputs: ["size", "invalid"] }, { kind: "component", type: i2.SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgVar, selector: "[ngVar]", inputs: ["ngVar"] }, { kind: "component", type: i2.SmzIconFieldComponent, selector: "ui-icon-field" }, { kind: "component", type: i2.SmzInputIconComponent, selector: "ui-input-icon", inputs: ["styleClass"] }, { kind: "component", type: SmzListItemComponent, selector: "smz-list-item", inputs: ["isDebug", "template", "buttons", "menu", "data"] }, { kind: "component", type: SmzGridItemComponent, selector: "smz-grid-item", inputs: ["isDebug", "template", "buttons", "menu", "data"] }, { kind: "directive", type: SmzInjectDataPathComponent, selector: "[smzInjectDataPathComponent]", inputs: ["smzInjectDataPathComponent", "data", "state"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$2, name: "safeHtml" }, { kind: "pipe", type: SmzCardsResetContextPipe, name: "resetContext" }], changeDetection: i0.ChangeDetectionStrategy.Eager, encapsulation: i0.ViewEncapsulation.None });
47643
47643
  }
47644
47644
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzCardsComponent, decorators: [{
47645
47645
  type: Component,
47646
- args: [{ selector: 'smz-ui-cards', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (state != null) {\r\n <ng-container *ngVar=\"state.items$ | async as items\">\r\n <ng-container *ngVar=\"items | resetContext : state.template._context\">\r\n <ui-data-view #dataView [styleClass]=\"state.view.dataViewStyleClass\" [gridStyleClass]=\"state.view.gridStyleClass\" [value]=\"items ?? []\" [paginator]=\"state.view.paginator\" [rows]=\"state.view.rowsPerPage\" [filterBy]=\"state.view.filterBy\" [layout]=\"state.view.layout\">\r\n @if (state.view.showHeader) {\r\n <ng-template #header>\r\n <div class=\"grid grid-nogutter lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between gap-2\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"grid grid-nogutter items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n <ui-icon-field class=\"p-input-icon-left mb-2 md:mb-0\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input type=\"search\" smzInputText [placeholder]=\"state.locale.globalSearch.placeholder\" (input)=\"dataView.filter($any($event.target).value)\">\r\n </ui-icon-field>\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n <!-- FIXME: Implementar -->\r\n <!-- <p-dataViewLayoutOptions *ngIf=\"state.view.showLayoutOptions\"></p-dataViewLayoutOptions> -->\r\n </div>\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-items #list>\r\n @if (state.template != null) {\r\n <div class=\"grid grid-nogutter\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n <smz-list-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.list.styleClass.all\"></smz-list-item>\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template let-items #grid>\r\n @if (state.template != null) {\r\n <div class=\"grid grid-nogutter\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.grid.styleClass.all\"></smz-grid-item>\r\n }\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template #empty>\r\n @if (state.view.emptyMessageType === 'html') {\r\n <div [innerHTML]=\"state.locale.emptyMessage | safeHtml\" class=\"w-full h-full\"></div>\r\n }\r\n @if (state.view.emptyMessageType === 'component') {\r\n <ng-template [smzInjectDataPathComponent]=\"state.view.emptyMessageComponent\" [data]=\"items\" [state]=\"state\"></ng-template>\r\n }\r\n </ng-template>\r\n </ui-data-view>\r\n </ng-container>\r\n </ng-container>\r\n}" }]
47646
+ args: [{ selector: 'smz-ui-cards', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, standalone: false, template: "@if (state != null) {\r\n <ng-container *ngVar=\"state.items$ | async as items\">\r\n <ng-container *ngVar=\"items | resetContext : state.template._context\">\r\n <ui-data-view #dataView [styleClass]=\"state.view.dataViewStyleClass\" [gridStyleClass]=\"state.view.gridStyleClass\" [value]=\"items ?? []\" [paginator]=\"state.view.paginator\" [rows]=\"state.view.rowsPerPage\" [filterBy]=\"state.view.filterBy\" [layout]=\"state.view.layout\">\r\n @if (state.view.showHeader) {\r\n <ng-template #header>\r\n <div class=\"flex flex-wrap lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between gap-2\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"flex flex-wrap items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n <ui-icon-field class=\"p-input-icon-left mb-2 md:mb-0\">\r\n <ui-input-icon styleClass=\"fa-solid fa-magnifying-glass\"></ui-input-icon>\r\n <input type=\"search\" smzInputText [placeholder]=\"state.locale.globalSearch.placeholder\" (input)=\"dataView.filter($any($event.target).value)\">\r\n </ui-icon-field>\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n <!-- FIXME: Implementar -->\r\n <!-- <p-dataViewLayoutOptions *ngIf=\"state.view.showLayoutOptions\"></p-dataViewLayoutOptions> -->\r\n </div>\r\n </div>\r\n </ng-template>\r\n }\r\n <ng-template let-items #list>\r\n @if (state.template != null) {\r\n <div class=\"flex flex-wrap\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n <smz-list-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.list.styleClass.all\"></smz-list-item>\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template let-items #grid>\r\n @if (state.template != null) {\r\n <div class=\"flex flex-wrap\" [ngClass]=\"state.view.gridStyleClass\">\r\n @for (item of items; track item) {\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"item\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.grid.styleClass.all\"></smz-grid-item>\r\n }\r\n }\r\n </div>\r\n }\r\n </ng-template>\r\n <ng-template #empty>\r\n @if (state.view.emptyMessageType === 'html') {\r\n <div [innerHTML]=\"state.locale.emptyMessage | safeHtml\" class=\"w-full h-full\"></div>\r\n }\r\n @if (state.view.emptyMessageType === 'component') {\r\n <ng-template [smzInjectDataPathComponent]=\"state.view.emptyMessageComponent\" [data]=\"items\" [state]=\"state\"></ng-template>\r\n }\r\n </ng-template>\r\n </ui-data-view>\r\n </ng-container>\r\n </ng-container>\r\n}" }]
47647
47647
  }], propDecorators: { dataView: [{
47648
47648
  type: ViewChild,
47649
47649
  args: [SmzDataViewComponent]
@@ -48007,7 +48007,7 @@ class SmzTimelineComponent {
48007
48007
  this.cdr.markForCheck();
48008
48008
  }
48009
48009
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTimelineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
48010
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTimelineComponent, isStandalone: true, selector: "smz-ui-timeline", inputs: { state: "state" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state != null) {\r\n @if (state.items$ | async; as items) {\r\n @if (state.title.isVisible || headerTemplate != null || state.sources.length > 0) {\r\n <div class=\"grid grid-nogutter lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between gap-2 mb-3\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"grid grid-nogutter items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n </div>\r\n </div>\r\n }\r\n @if (items?.length > 0) {\r\n <ui-timeline [value]=\"items\" [align]=\"state.view.align\" [styleClass]=\"state.view.styleClass.timeline\">\r\n <ng-template smzTemplate=\"marker\" let-event>\r\n <span [ngClass]=\"state.marker.styleClass\">\r\n <i [ngClass]=\"state.marker.icon\"></i>\r\n </span>\r\n </ng-template>\r\n <ng-template smzTemplate=\"content\" let-event>\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"event\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.view.styleClass.event\"></smz-grid-item>\r\n }\r\n </ng-template>\r\n </ui-timeline>\r\n } @else {\r\n <div>{{ state.locale.emptyMessage }}</div>\r\n }\r\n }\r\n}", styles: ["@media screen and (max-width:960px){smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n){flex-direction:row!important}smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n) .p-timeline-event-content{text-align:left!important}smz-ui-timeline .mobile-timeline .p-timeline-event-opposite{flex:0}}smz-ui-timeline .p-timeline-left .p-timeline-event-opposite{display:none}smz-ui-timeline .p-timeline-right .p-timeline-event-opposite{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "component", type: SmzUiTimelineComponent, selector: "ui-timeline", inputs: ["value", "align", "layout", "styleClass"] }, { kind: "ngmodule", type: SafeContentPipeModule }, { kind: "ngmodule", type: NgxSmzCardsModule }, { kind: "component", type: SmzGridItemComponent, selector: "smz-grid-item", inputs: ["isDebug", "template", "buttons", "menu", "data"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$1, name: "safeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
48010
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzTimelineComponent, isStandalone: true, selector: "smz-ui-timeline", inputs: { state: "state" }, queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state != null) {\r\n @if (state.items$ | async; as items) {\r\n @if (state.title.isVisible || headerTemplate != null || state.sources.length > 0) {\r\n <div class=\"flex flex-wrap lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between mb-3 gap-2\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"flex flex-wrap items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n </div>\r\n </div>\r\n }\r\n @if (items?.length > 0) {\r\n <ui-timeline [value]=\"items\" [align]=\"state.view.align\" [styleClass]=\"state.view.styleClass.timeline\">\r\n <ng-template smzTemplate=\"marker\" let-event>\r\n <span [ngClass]=\"state.marker.styleClass\">\r\n <i [ngClass]=\"state.marker.icon\"></i>\r\n </span>\r\n </ng-template>\r\n <ng-template smzTemplate=\"content\" let-event>\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"event\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.view.styleClass.event\"></smz-grid-item>\r\n }\r\n </ng-template>\r\n </ui-timeline>\r\n } @else {\r\n <div>{{ state.locale.emptyMessage }}</div>\r\n }\r\n }\r\n}", styles: ["@media screen and (max-width:960px){smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n){flex-direction:row!important}smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n) .p-timeline-event-content{text-align:left!important}smz-ui-timeline .mobile-timeline .p-timeline-event-opposite{flex:0}}smz-ui-timeline .p-timeline-left .p-timeline-event-opposite{display:none}smz-ui-timeline .p-timeline-right .p-timeline-event-opposite{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: SmzTemplateDirective, selector: "ng-template[smzTemplate]", inputs: ["smzTemplate"] }, { kind: "component", type: SmzSelectComponent, selector: "ui-select", inputs: ["options", "optionLabel", "optionValue", "optionDisabled", "dataKey", "placeholder", "filter", "filterBy", "filterMatchMode", "filterPlaceholder", "showClear", "emptyMessage", "emptyFilterMessage", "styleClass", "inputId", "ariaLabel", "appendTo"], outputs: ["changed", "showed", "hidden"] }, { kind: "component", type: SmzUiTimelineComponent, selector: "ui-timeline", inputs: ["value", "align", "layout", "styleClass"] }, { kind: "ngmodule", type: SafeContentPipeModule }, { kind: "ngmodule", type: NgxSmzCardsModule }, { kind: "component", type: SmzGridItemComponent, selector: "smz-grid-item", inputs: ["isDebug", "template", "buttons", "menu", "data"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: SafeHtmlPipe$1, name: "safeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
48011
48011
  }
48012
48012
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzTimelineComponent, decorators: [{
48013
48013
  type: Component,
@@ -48019,7 +48019,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
48019
48019
  SmzUiTimelineComponent,
48020
48020
  SafeContentPipeModule,
48021
48021
  NgxSmzCardsModule,
48022
- ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "@if (state != null) {\r\n @if (state.items$ | async; as items) {\r\n @if (state.title.isVisible || headerTemplate != null || state.sources.length > 0) {\r\n <div class=\"grid grid-nogutter lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between gap-2 mb-3\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"grid grid-nogutter items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n </div>\r\n </div>\r\n }\r\n @if (items?.length > 0) {\r\n <ui-timeline [value]=\"items\" [align]=\"state.view.align\" [styleClass]=\"state.view.styleClass.timeline\">\r\n <ng-template smzTemplate=\"marker\" let-event>\r\n <span [ngClass]=\"state.marker.styleClass\">\r\n <i [ngClass]=\"state.marker.icon\"></i>\r\n </span>\r\n </ng-template>\r\n <ng-template smzTemplate=\"content\" let-event>\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"event\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.view.styleClass.event\"></smz-grid-item>\r\n }\r\n </ng-template>\r\n </ui-timeline>\r\n } @else {\r\n <div>{{ state.locale.emptyMessage }}</div>\r\n }\r\n }\r\n}", styles: ["@media screen and (max-width:960px){smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n){flex-direction:row!important}smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n) .p-timeline-event-content{text-align:left!important}smz-ui-timeline .mobile-timeline .p-timeline-event-opposite{flex:0}}smz-ui-timeline .p-timeline-left .p-timeline-event-opposite{display:none}smz-ui-timeline .p-timeline-right .p-timeline-event-opposite{display:none}\n"] }]
48022
+ ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "@if (state != null) {\r\n @if (state.items$ | async; as items) {\r\n @if (state.title.isVisible || headerTemplate != null || state.sources.length > 0) {\r\n <div class=\"flex flex-wrap lg:flex-row xl:flex-row md:flex-col sm:flex-col items-center justify-between mb-3 gap-2\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <div class=\"text-lg\" [innerHtml]=\"state.title.getText() | safeHtml\"></div>\r\n }\r\n </div>\r\n <div class=\"flex flex-wrap items-center justify-end gap-3\">\r\n @if (headerTemplate != null) {\r\n <ng-container *ngTemplateOutlet=\"headerTemplate; context: { $implicit: state }\"></ng-container>\r\n }\r\n @if (state.sources.length > 0) {\r\n <ui-select appendTo=\"body\" [options]=\"state.sources\" dataKey=\"key\" [(ngModel)]=\"state.selectedSource\" optionLabel=\"label\" (changed)=\"updateMainSource($event)\"></ui-select>\r\n }\r\n </div>\r\n </div>\r\n }\r\n @if (items?.length > 0) {\r\n <ui-timeline [value]=\"items\" [align]=\"state.view.align\" [styleClass]=\"state.view.styleClass.timeline\">\r\n <ng-template smzTemplate=\"marker\" let-event>\r\n <span [ngClass]=\"state.marker.styleClass\">\r\n <i [ngClass]=\"state.marker.icon\"></i>\r\n </span>\r\n </ng-template>\r\n <ng-template smzTemplate=\"content\" let-event>\r\n @if (state.template != null) {\r\n <smz-grid-item [isDebug]=\"state.isDebug\" [template]=\"state.template\" [data]=\"event\" [menu]=\"state.menu\" [buttons]=\"state.buttons\" [ngClass]=\"state.view.styleClass.event\"></smz-grid-item>\r\n }\r\n </ng-template>\r\n </ui-timeline>\r\n } @else {\r\n <div>{{ state.locale.emptyMessage }}</div>\r\n }\r\n }\r\n}", styles: ["@media screen and (max-width:960px){smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n){flex-direction:row!important}smz-ui-timeline .mobile-timeline .p-timeline-event:nth-child(2n) .p-timeline-event-content{text-align:left!important}smz-ui-timeline .mobile-timeline .p-timeline-event-opposite{flex:0}}smz-ui-timeline .p-timeline-left .p-timeline-event-opposite{display:none}smz-ui-timeline .p-timeline-right .p-timeline-event-opposite{display:none}\n"] }]
48023
48023
  }], propDecorators: { templates: [{
48024
48024
  type: ContentChildren,
48025
48025
  args: [SmzTemplateDirective]
@@ -48206,7 +48206,7 @@ class SmzSubmitComponent {
48206
48206
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzSubmitComponent, deps: [{ token: SmzUiBlockService }], target: i0.ɵɵFactoryTarget.Component });
48207
48207
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzSubmitComponent, isStandalone: true, selector: "smz-ui-submit", inputs: { state: "state", unBlockOnSave: "unBlockOnSave", useBlockUi: "useBlockUi", resetLabel: "resetLabel", resetStyleClass: "resetStyleClass", resetIcon: "resetIcon", saveLabel: "saveLabel", saveStyleClass: "saveStyleClass", saveIcon: "saveIcon" }, outputs: { save: "save" }, usesOnChanges: true, ngImport: i0, template: `
48208
48208
  @if (state != null && response != null) {
48209
- <div class="grid grid-nogutter items-center justify-start gap-2">
48209
+ <div class="flex flex-wrap items-center justify-start gap-2">
48210
48210
  <button smzButton smzRipple type="button" [icon]="saveIcon" [styleClass]="saveStyleClass" [disabled]="!response.isValid || !response.hasUnsavedChanges" (click)="submitSave()" [label]="saveLabel"></button>
48211
48211
  <button smzButton smzRipple type="button" [icon]="resetIcon" [styleClass]="resetStyleClass" [disabled]="!response.hasUnsavedChanges" (click)="cancel()" [label]="resetLabel"></button>
48212
48212
  </div>
@@ -48220,7 +48220,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
48220
48220
  selector: 'smz-ui-submit',
48221
48221
  template: `
48222
48222
  @if (state != null && response != null) {
48223
- <div class="grid grid-nogutter items-center justify-start gap-2">
48223
+ <div class="flex flex-wrap items-center justify-start gap-2">
48224
48224
  <button smzButton smzRipple type="button" [icon]="saveIcon" [styleClass]="saveStyleClass" [disabled]="!response.isValid || !response.hasUnsavedChanges" (click)="submitSave()" [label]="saveLabel"></button>
48225
48225
  <button smzButton smzRipple type="button" [icon]="resetIcon" [styleClass]="resetStyleClass" [disabled]="!response.hasUnsavedChanges" (click)="cancel()" [label]="resetLabel"></button>
48226
48226
  </div>
@@ -48846,11 +48846,11 @@ class SmzSvgComponent {
48846
48846
  this.state.dispatch.setScopes.unsubscribe();
48847
48847
  }
48848
48848
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzSvgComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
48849
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzSvgComponent, isStandalone: false, selector: "smz-svg", inputs: { state: "state" }, viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: SmzPopoverComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div id=\"smz-svg-container\" [ngClass]=\"state?.containerClass\">\r\n <div id=\"smz-svg-map\" [ngClass]=\"{ 'border-2 border-red-800 border-solid': state?.isDebug }\"></div>\r\n</div>\r\n\r\n<ui-popover #op appendTo=\"body\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <i class=\"fa-solid fa-map-pin text-blue-200 text-2xl\"></i>\r\n <div>{{ tooltipContent }}</div>\r\n </div>\r\n</ui-popover>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzPopoverComponent, selector: "ui-popover", inputs: ["style", "styleClass", "dismissable", "autoZIndex", "appendTo"], outputs: ["shown", "hidden"] }], changeDetection: i0.ChangeDetectionStrategy.Eager });
48849
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: SmzSvgComponent, isStandalone: false, selector: "smz-svg", inputs: { state: "state" }, viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: SmzPopoverComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div id=\"smz-svg-container\" [ngClass]=\"state?.containerClass\">\r\n <div id=\"smz-svg-map\" [ngClass]=\"{ 'border-2 border-red-800 border-solid': state?.isDebug }\"></div>\r\n</div>\r\n\r\n<ui-popover #op appendTo=\"body\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <i class=\"fa-solid fa-map-pin text-blue-200 text-2xl\"></i>\r\n <div>{{ tooltipContent }}</div>\r\n </div>\r\n</ui-popover>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.SmzPopoverComponent, selector: "ui-popover", inputs: ["style", "styleClass", "dismissable", "autoZIndex", "appendTo"], outputs: ["shown", "hidden"] }], changeDetection: i0.ChangeDetectionStrategy.Eager });
48850
48850
  }
48851
48851
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzSvgComponent, decorators: [{
48852
48852
  type: Component,
48853
- args: [{ selector: 'smz-svg', changeDetection: ChangeDetectionStrategy.Default, standalone: false, template: "<div id=\"smz-svg-container\" [ngClass]=\"state?.containerClass\">\r\n <div id=\"smz-svg-map\" [ngClass]=\"{ 'border-2 border-red-800 border-solid': state?.isDebug }\"></div>\r\n</div>\r\n\r\n<ui-popover #op appendTo=\"body\">\r\n <div class=\"grid grid-nogutter items-center justify-start gap-2\">\r\n <i class=\"fa-solid fa-map-pin text-blue-200 text-2xl\"></i>\r\n <div>{{ tooltipContent }}</div>\r\n </div>\r\n</ui-popover>\r\n" }]
48853
+ args: [{ selector: 'smz-svg', changeDetection: ChangeDetectionStrategy.Default, standalone: false, template: "<div id=\"smz-svg-container\" [ngClass]=\"state?.containerClass\">\r\n <div id=\"smz-svg-map\" [ngClass]=\"{ 'border-2 border-red-800 border-solid': state?.isDebug }\"></div>\r\n</div>\r\n\r\n<ui-popover #op appendTo=\"body\">\r\n <div class=\"flex flex-wrap items-center justify-start gap-2\">\r\n <i class=\"fa-solid fa-map-pin text-blue-200 text-2xl\"></i>\r\n <div>{{ tooltipContent }}</div>\r\n </div>\r\n</ui-popover>\r\n" }]
48854
48854
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { overlayPanel: [{
48855
48855
  type: ViewChild,
48856
48856
  args: [SmzPopoverComponent]
@@ -53977,11 +53977,11 @@ class SmzEasyTableComponent {
53977
53977
  this.dataService.disconnect();
53978
53978
  }
53979
53979
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzEasyTableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: TableDataSourceService }, { token: TableContentService }], target: i0.ɵɵFactoryTarget.Component });
53980
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzEasyTableComponent, isStandalone: false, selector: "smz-easy-table", inputs: { state: "state", dataSource: "dataSource" }, providers: [TableDataSourceService, TableContentService], queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state != null) {\r\n <div class=\"grid grid-nogutter items-start flex-col justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <et-title class=\"col-12\" [state]=\"state\"></et-title>\r\n }\r\n @if (state.globalSearch.isEnabled) {\r\n <div class=\"col-12 grid grid-nogutter items-center justify-end\">\r\n <et-global-search class=\"col-4\" [state]=\"state\" [dataSource]=\"dataService\"></et-global-search>\r\n </div>\r\n }\r\n @if (state.desktop.enabled) {\r\n <et-desktop-table class=\"col-12\" [state]=\"state\" [dataSource]=\"dataService\" [contentService]=\"contentService\"></et-desktop-table>\r\n }\r\n @if (state.mobile.enabled) {\r\n <et-mobile-table class=\"col-12\" [state]=\"state\" [data]=\"[]\"></et-mobile-table>\r\n }\r\n </div>\r\n}", dependencies: [{ kind: "component", type: DesktopTableComponent, selector: "et-desktop-table", inputs: ["state", "dataSource", "contentService"] }, { kind: "component", type: MobileTableComponent, selector: "et-mobile-table", inputs: ["state", "data"] }, { kind: "component", type: TitleComponent, selector: "et-title", inputs: ["state"] }, { kind: "component", type: GlobalSearchComponent, selector: "et-global-search", inputs: ["state", "dataSource"] }] });
53980
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.1", type: SmzEasyTableComponent, isStandalone: false, selector: "smz-easy-table", inputs: { state: "state", dataSource: "dataSource" }, providers: [TableDataSourceService, TableContentService], queries: [{ propertyName: "templates", predicate: SmzTemplateDirective }], ngImport: i0, template: "@if (state != null) {\r\n <div class=\"grid grid-cols-12 items-start flex-col justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <et-title class=\"col-span-12 min-w-0\" [state]=\"state\"></et-title>\r\n }\r\n @if (state.globalSearch.isEnabled) {\r\n <div class=\"col-span-12 flex flex-wrap items-center justify-end min-w-0\">\r\n <et-global-search class=\"w-4/12 flex-none\" [state]=\"state\" [dataSource]=\"dataService\"></et-global-search>\r\n </div>\r\n }\r\n @if (state.desktop.enabled) {\r\n <et-desktop-table class=\"col-span-12 min-w-0\" [state]=\"state\" [dataSource]=\"dataService\" [contentService]=\"contentService\"></et-desktop-table>\r\n }\r\n @if (state.mobile.enabled) {\r\n <et-mobile-table class=\"col-span-12 min-w-0\" [state]=\"state\" [data]=\"[]\"></et-mobile-table>\r\n }\r\n </div>\r\n}", dependencies: [{ kind: "component", type: DesktopTableComponent, selector: "et-desktop-table", inputs: ["state", "dataSource", "contentService"] }, { kind: "component", type: MobileTableComponent, selector: "et-mobile-table", inputs: ["state", "data"] }, { kind: "component", type: TitleComponent, selector: "et-title", inputs: ["state"] }, { kind: "component", type: GlobalSearchComponent, selector: "et-global-search", inputs: ["state", "dataSource"] }] });
53981
53981
  }
53982
53982
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: SmzEasyTableComponent, decorators: [{
53983
53983
  type: Component,
53984
- args: [{ selector: 'smz-easy-table', providers: [TableDataSourceService, TableContentService], standalone: false, template: "@if (state != null) {\r\n <div class=\"grid grid-nogutter items-start flex-col justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <et-title class=\"col-12\" [state]=\"state\"></et-title>\r\n }\r\n @if (state.globalSearch.isEnabled) {\r\n <div class=\"col-12 grid grid-nogutter items-center justify-end\">\r\n <et-global-search class=\"col-4\" [state]=\"state\" [dataSource]=\"dataService\"></et-global-search>\r\n </div>\r\n }\r\n @if (state.desktop.enabled) {\r\n <et-desktop-table class=\"col-12\" [state]=\"state\" [dataSource]=\"dataService\" [contentService]=\"contentService\"></et-desktop-table>\r\n }\r\n @if (state.mobile.enabled) {\r\n <et-mobile-table class=\"col-12\" [state]=\"state\" [data]=\"[]\"></et-mobile-table>\r\n }\r\n </div>\r\n}" }]
53984
+ args: [{ selector: 'smz-easy-table', providers: [TableDataSourceService, TableContentService], standalone: false, template: "@if (state != null) {\r\n <div class=\"grid grid-cols-12 items-start flex-col justify-start gap-2\">\r\n @if (state.title.isVisible) {\r\n <et-title class=\"col-span-12 min-w-0\" [state]=\"state\"></et-title>\r\n }\r\n @if (state.globalSearch.isEnabled) {\r\n <div class=\"col-span-12 flex flex-wrap items-center justify-end min-w-0\">\r\n <et-global-search class=\"w-4/12 flex-none\" [state]=\"state\" [dataSource]=\"dataService\"></et-global-search>\r\n </div>\r\n }\r\n @if (state.desktop.enabled) {\r\n <et-desktop-table class=\"col-span-12 min-w-0\" [state]=\"state\" [dataSource]=\"dataService\" [contentService]=\"contentService\"></et-desktop-table>\r\n }\r\n @if (state.mobile.enabled) {\r\n <et-mobile-table class=\"col-span-12 min-w-0\" [state]=\"state\" [data]=\"[]\"></et-mobile-table>\r\n }\r\n </div>\r\n}" }]
53985
53985
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: TableDataSourceService }, { type: TableContentService }], propDecorators: { state: [{
53986
53986
  type: Input
53987
53987
  }], dataSource: [{
@@ -54553,7 +54553,7 @@ class SmzTreeWithDetailsBuilder {
54553
54553
  content: 'gap-3 p-6 overflow-y-auto'
54554
54554
  },
54555
54555
  layout: {
54556
- detailsStyleClass: 'p-2 lg:col-6'
54556
+ detailsStyleClass: 'p-2 lg:w-6/12 flex-none'
54557
54557
  },
54558
54558
  locale: null,
54559
54559
  };
@@ -54828,7 +54828,7 @@ class SmzCardsTextBuilder extends SmzCardsBaseBuilder {
54828
54828
  }
54829
54829
  else {
54830
54830
  const iconHtml = `<i class="${icon.icon}"></i>`;
54831
- const begin = icon.appendText === null || icon.appendText === undefined ? '' : `<div class="grid grid-nogutter items-center justify-start gap-1 ${icon.styleClass}">`;
54831
+ const begin = icon.appendText === null || icon.appendText === undefined ? '' : `<div class="flex flex-wrap items-center justify-start gap-1 ${icon.styleClass}">`;
54832
54832
  const end = icon.appendText === null || icon.appendText === undefined ? '' : `<div>${icon.appendText}</div></div>`;
54833
54833
  return `${begin}${iconHtml}${end}`;
54834
54834
  }
@@ -55416,7 +55416,7 @@ class SmzCardsBuilder {
55416
55416
  isVisible: false,
55417
55417
  styleClass: {
55418
55418
  all: '',
55419
- layout: 'col-12 lg:col-6 xl:col-3',
55419
+ layout: 'w-full flex-none lg:w-6/12 xl:w-3/12',
55420
55420
  padding: 'p-2',
55421
55421
  general: ''
55422
55422
  }
@@ -55425,7 +55425,7 @@ class SmzCardsBuilder {
55425
55425
  isVisible: false,
55426
55426
  styleClass: {
55427
55427
  all: '',
55428
- layout: 'col-12 lg:col-6 xl:col-3',
55428
+ layout: 'w-full flex-none lg:w-6/12 xl:w-3/12',
55429
55429
  padding: 'p-2',
55430
55430
  general: ''
55431
55431
  }