@libs-ui/components-radio-group 0.2.215 → 0.2.217

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.
@@ -116,7 +116,7 @@ export class LibsUiComponentsRadioGroupComponent {
116
116
  this.isErrorRequired.set(false);
117
117
  }
118
118
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
119
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioGroupComponent, isStandalone: true, selector: "libs_ui-components-radio-group", inputs: { fieldKey: { classPropertyName: "fieldKey", publicName: "fieldKey", isSignal: true, isRequired: false, transformFunction: null }, keyActive: { classPropertyName: "keyActive", publicName: "keyActive", isSignal: true, isRequired: false, transformFunction: null }, keysDisable: { classPropertyName: "keysDisable", publicName: "keysDisable", isSignal: true, isRequired: false, transformFunction: null }, groups: { classPropertyName: "groups", publicName: "groups", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, labelConfig: { classPropertyName: "labelConfig", publicName: "labelConfig", isSignal: true, isRequired: false, transformFunction: null }, validRequired: { classPropertyName: "validRequired", publicName: "validRequired", isSignal: true, isRequired: false, transformFunction: null }, ignoreClassMarginLastItem: { classPropertyName: "ignoreClassMarginLastItem", publicName: "ignoreClassMarginLastItem", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, classItemInclude: { classPropertyName: "classItemInclude", publicName: "classItemInclude", isSignal: true, isRequired: false, transformFunction: null }, alwaysShowSubText: { classPropertyName: "alwaysShowSubText", publicName: "alwaysShowSubText", isSignal: true, isRequired: false, transformFunction: null }, horizontalClassInclude: { classPropertyName: "horizontalClassInclude", publicName: "horizontalClassInclude", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { groups: "groupsChange", outClickButton: "outClickButton", outChange: "outChange", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div [class]=\"'libs-ui-radio-group-sub-text ' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;font-size:10px;font-family:var(--libs-ui-font-family-name, \"Arial\");font-weight:400;line-height:normal;margin-left:24px;margin-bottom:4px;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LibsUiComponentsLabelComponent, selector: "libs_ui-components-label", inputs: ["iconPopoverClass", "classInclude", "labelLeft", "labelLeftClass", "labelLeftBehindToggleButton", "popover", "required", "buttonsLeft", "disableButtonsLeft", "buttonsRight", "disableButtonsRight", "labelRight", "labelRightClass", "labelRightRequired", "hasToggle", "toggleSize", "toggleActive", "toggleDisable", "description", "descriptionClass", "buttonsDescription", "disableButtonsDescription", "buttonsDescriptionContainerClass", "onlyShowCount", "zIndexPopover", "timerDestroyPopover", "count", "limitLength"], outputs: ["outClickButton", "outSwitchEvent", "outLabelRightClick", "outLabelLeftClick"] }, { kind: "component", type: LibsUiComponentsRadioSingleComponent, selector: "libs_ui-components-radio-single", inputs: ["key", "active", "classInclude", "label", "labelInterpolateParams", "ignorePopoverLabel", "classLabelInclude", "linkImage", "linkImageError", "avatarConfig", "classImageInclude", "imgTypeIcon", "bullet", "popover", "disable", "disableLabel", "clickExactly", "typeRadio", "ignoreRadio", "zIndexLabel", "classIncludeIcon", "dataComponentOutlet", "componentOutlet"], outputs: ["activeChange", "outClickLabel", "outChange", "outChangStageFlagMousePopover"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
119
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioGroupComponent, isStandalone: true, selector: "libs_ui-components-radio-group", inputs: { fieldKey: { classPropertyName: "fieldKey", publicName: "fieldKey", isSignal: true, isRequired: false, transformFunction: null }, keyActive: { classPropertyName: "keyActive", publicName: "keyActive", isSignal: true, isRequired: false, transformFunction: null }, keysDisable: { classPropertyName: "keysDisable", publicName: "keysDisable", isSignal: true, isRequired: false, transformFunction: null }, groups: { classPropertyName: "groups", publicName: "groups", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, labelConfig: { classPropertyName: "labelConfig", publicName: "labelConfig", isSignal: true, isRequired: false, transformFunction: null }, validRequired: { classPropertyName: "validRequired", publicName: "validRequired", isSignal: true, isRequired: false, transformFunction: null }, ignoreClassMarginLastItem: { classPropertyName: "ignoreClassMarginLastItem", publicName: "ignoreClassMarginLastItem", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, classItemInclude: { classPropertyName: "classItemInclude", publicName: "classItemInclude", isSignal: true, isRequired: false, transformFunction: null }, alwaysShowSubText: { classPropertyName: "alwaysShowSubText", publicName: "alwaysShowSubText", isSignal: true, isRequired: false, transformFunction: null }, horizontalClassInclude: { classPropertyName: "horizontalClassInclude", publicName: "horizontalClassInclude", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { groups: "groupsChange", outClickButton: "outClickButton", outChange: "outChange", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div\n [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div\n [class]=\"'libs-ui-radio-group-sub-text libs-ui-font-h7r' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;margin-left:24px;margin-bottom:4px;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LibsUiComponentsLabelComponent, selector: "libs_ui-components-label", inputs: ["iconPopoverClass", "classInclude", "labelLeft", "labelLeftClass", "labelLeftBehindToggleButton", "popover", "required", "buttonsLeft", "disableButtonsLeft", "buttonsRight", "disableButtonsRight", "labelRight", "labelRightClass", "labelRightRequired", "hasToggle", "toggleSize", "toggleActive", "toggleDisable", "description", "descriptionClass", "buttonsDescription", "disableButtonsDescription", "buttonsDescriptionContainerClass", "onlyShowCount", "zIndexPopover", "timerDestroyPopover", "count", "limitLength"], outputs: ["outClickButton", "outSwitchEvent", "outLabelRightClick", "outLabelLeftClick"] }, { kind: "component", type: LibsUiComponentsRadioSingleComponent, selector: "libs_ui-components-radio-single", inputs: ["key", "active", "classInclude", "label", "labelInterpolateParams", "ignorePopoverLabel", "classLabelInclude", "linkImage", "linkImageError", "avatarConfig", "classImageInclude", "imgTypeIcon", "bullet", "popover", "disable", "disableLabel", "clickExactly", "typeRadio", "ignoreRadio", "zIndexLabel", "classIncludeIcon", "dataComponentOutlet", "componentOutlet"], outputs: ["activeChange", "outClickLabel", "outChange", "outChangStageFlagMousePopover"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
120
120
  }
121
121
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioGroupComponent, decorators: [{
122
122
  type: Component,
@@ -124,6 +124,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
124
124
  TranslateModule, NgTemplateOutlet,
125
125
  LibsUiComponentsLabelComponent,
126
126
  LibsUiComponentsRadioSingleComponent
127
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div [class]=\"'libs-ui-radio-group-sub-text ' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;font-size:10px;font-family:var(--libs-ui-font-family-name, \"Arial\");font-weight:400;line-height:normal;margin-left:24px;margin-bottom:4px;width:100%}\n"] }]
127
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div\n [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div\n [class]=\"'libs-ui-radio-group-sub-text libs-ui-font-h7r' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;margin-left:24px;margin-bottom:4px;width:100%}\n"] }]
128
128
  }], ctorParameters: () => [] });
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL3JhZGlvL2dyb3VwL3NyYy9ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzLXVpL2NvbXBvbmVudHMvcmFkaW8vZ3JvdXAvc3JjL2dyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVILE9BQU8sRUFBVSw4QkFBOEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ25GLE9BQU8sRUFBZSxvQ0FBb0MsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQWdCdEQsTUFBTSxPQUFPLG1DQUFtQztJQUM5QyxtQkFBbUI7SUFDQSx5QkFBeUIsR0FBRyx5QkFBeUIsQ0FBQztJQUMvRCxlQUFlLEdBQUcsTUFBTSxDQUFVLEtBQUssQ0FBQyxDQUFBO0lBRWxELGdCQUFnQjtJQUNQLFFBQVEsR0FBRyxLQUFLLENBQWlCLEtBQUssRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2hGLFNBQVMsR0FBRyxLQUFLLEVBQVcsQ0FBQztJQUM3QixXQUFXLEdBQUcsS0FBSyxFQUFpQixDQUFDO0lBQ3JDLE1BQU0sR0FB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RUFBRSxFQUFFLENBQUM7WUFDMUIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRS9GLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVPLEtBQUssQ0FBQyxVQUFVO1FBQ3RCLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7d0dBM0hVLG1DQUFtQzs0RkFBbkMsbUNBQW1DLHcrRUN2QmhELG01R0FrRUEsbVJEakRJLGVBQWUsNEZBQUUsZ0JBQWdCLG9KQUNqQyw4QkFBOEIsNHFCQUM5QixvQ0FBb0M7OzRGQUkzQixtQ0FBbUM7a0JBYi9DLFNBQVM7K0JBRUUsZ0NBQWdDLGNBRzlCLElBQUksV0FDUDt3QkFDUCxlQUFlLEVBQUUsZ0JBQWdCO3dCQUNqQyw4QkFBOEI7d0JBQzlCLG9DQUFvQztxQkFDckMsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCwgZWZmZWN0LCBpbnB1dCwgbW9kZWwsIG91dHB1dCwgc2lnbmFsLCB1bnRyYWNrZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElCdXR0b24gfSBmcm9tICdAbGlicy11aS9jb21wb25lbnRzLWJ1dHRvbnMtYnV0dG9uJztcbmltcG9ydCB7IElMYWJlbCwgTGlic1VpQ29tcG9uZW50c0xhYmVsQ29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1sYWJlbCc7XG5pbXBvcnQgeyBJUmFkaW9FdmVudCwgTGlic1VpQ29tcG9uZW50c1JhZGlvU2luZ2xlQ29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1yYWRpby1zaW5nbGUnO1xuaW1wb3J0IHsgRVJST1JfTUVTU0FHRV9FTVBUWV9WQUxJRCwgaXNOaWwgfSBmcm9tICdAbGlicy11aS91dGlscyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IElSYWRpb0dyb3VwRnVuY3Rpb25Db250cm9sRXZlbnQsIElSYWRpb0dyb3VwSXRlbSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2xpYnNfdWktY29tcG9uZW50cy1yYWRpby1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBUcmFuc2xhdGVNb2R1bGUsIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgTGlic1VpQ29tcG9uZW50c0xhYmVsQ29tcG9uZW50LFxuICAgIExpYnNVaUNvbXBvbmVudHNSYWRpb1NpbmdsZUNvbXBvbmVudFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMaWJzVWlDb21wb25lbnRzUmFkaW9Hcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vICNyZWdpb24gUFJPUEVSVFlcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEVSUk9SX01FU1NBR0VfRU1QVFlfVkFMSUQgPSBFUlJPUl9NRVNTQUdFX0VNUFRZX1ZBTElEO1xuICBwcm90ZWN0ZWQgaXNFcnJvclJlcXVpcmVkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKVxuXG4gIC8vICNyZWdpb24gSU5QVVRcbiAgcmVhZG9ubHkgZmllbGRLZXkgPSBpbnB1dDxzdHJpbmcsIHN0cmluZz4oJ2tleScsIHsgdHJhbnNmb3JtOiB2YWx1ZSA9PiB2YWx1ZSB8fCAna2V5JyB9KTtcbiAgcmVhZG9ubHkga2V5QWN0aXZlID0gaW5wdXQ8dW5rbm93bj4oKTtcbiAgcmVhZG9ubHkga2V5c0Rpc2FibGUgPSBpbnB1dDxBcnJheTxzdHJpbmc+PigpO1xuICByZWFkb25seSBncm91cHMgPSBtb2RlbDxBcnJheTxJUmFkaW9Hcm91cEl0ZW0+PihbXSk7XG4gIHJlYWRvbmx5IGRpc2FibGUgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkLCBib29sZWFuIHwgdW5kZWZpbmVkPihmYWxzZSwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/IGZhbHNlIH0pO1xuICByZWFkb25seSBjbGlja0V4YWN0bHkgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkLCBib29sZWFuIHwgdW5kZWZpbmVkPih0cnVlLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgaG9yaXpvbnRhbCA9IGlucHV0PGJvb2xlYW4gfCB1bmRlZmluZWQsIGJvb2xlYW4gfCB1bmRlZmluZWQ+KGZhbHNlLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gZmFsc2UgfSk7XG4gIHJlYWRvbmx5IGxhYmVsQ29uZmlnID0gaW5wdXQ8SUxhYmVsIHwgdW5kZWZpbmVkPigpXG4gIHJlYWRvbmx5IHZhbGlkUmVxdWlyZWQgPSBpbnB1dDx7XG4gICAgbWVzc2FnZT86IHN0cmluZztcbiAgICBpbnRlcnBvbGF0ZVBhcmFtcz86IHsgYW55OiBhbnkgfTtcbiAgfSB8IHVuZGVmaW5lZD4oKVxuICByZWFkb25seSBpZ25vcmVDbGFzc01hcmdpbkxhc3RJdGVtID0gaW5wdXQ8Ym9vbGVhbiB8IHVuZGVmaW5lZD4oZmFsc2UpO1xuICByZWFkb25seSB0eXBlUmFkaW8gPSBpbnB1dDwnbm9ybWFsJyB8ICdtZWRpdW0nIHwgdW5kZWZpbmVkLCAnbm9ybWFsJyB8ICdtZWRpdW0nIHwgdW5kZWZpbmVkPignbm9ybWFsJywgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/ICdub3JtYWwnIH0pO1xuICByZWFkb25seSBjbGFzc0luY2x1ZGUgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQsIHN0cmluZyB8IHVuZGVmaW5lZD4oJycsIHsgdHJhbnNmb3JtOiB2YWx1ZSA9PiB2YWx1ZSA/PyAnJyB9KTtcbiAgcmVhZG9ubHkgY2xhc3NMYWJlbEluY2x1ZGUgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQsIHN0cmluZyB8IHVuZGVmaW5lZD4oJycsIHsgdHJhbnNmb3JtOiB2YWx1ZSA9PiB2YWx1ZSA/PyAnJyB9KTtcbiAgcmVhZG9ubHkgY2xhc3NJdGVtSW5jbHVkZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZCwgc3RyaW5nIHwgdW5kZWZpbmVkPigncHktWzRweF0nLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gJ3B5LVs0cHhdJyB9KTtcbiAgcmVhZG9ubHkgYWx3YXlzU2hvd1N1YlRleHQgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkPigpO1xuICByZWFkb25seSBob3Jpem9udGFsQ2xhc3NJbmNsdWRlID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkLCBzdHJpbmcgfCB1bmRlZmluZWQ+KCcnLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gJycgfSk7XG5cbiAgLy8gI3JlZ2lvbiBPVVRQVVRcbiAgcmVhZG9ubHkgb3V0Q2xpY2tCdXR0b24gPSBvdXRwdXQ8SUJ1dHRvbj4oKTtcbiAgcmVhZG9ubHkgb3V0Q2hhbmdlID0gb3V0cHV0PElSYWRpb0V2ZW50PigpO1xuICByZWFkb25seSBvdXRGdW5jdGlvbnNDb250cm9sID0gb3V0cHV0PElSYWRpb0dyb3VwRnVuY3Rpb25Db250cm9sRXZlbnQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc05pbCh0aGlzLmtleUFjdGl2ZSgpKSB8fCAhdGhpcy5maWVsZEtleSgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnVwZGF0ZShkYXRhID0+IHtcbiAgICAgICAgICByZXR1cm4gZGF0YS5tYXA8SVJhZGlvR3JvdXBJdGVtPigoZ3JvdXApID0+IHtcbiAgICAgICAgICAgIGdyb3VwLml0ZW0uYWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAoZ3JvdXAuaXRlbSAmJiBncm91cC5pdGVtW3RoaXMuZmllbGRLZXkoKV0gPT09IHRoaXMua2V5QWN0aXZlKCkpIHtcbiAgICAgICAgICAgICAgZ3JvdXAuaXRlbS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGdyb3VwO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgfSk7XG5cbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRoaXMua2V5c0Rpc2FibGUoKSkgfHwgIXRoaXMuZmllbGRLZXkoKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICB0aGlzLmdyb3Vwcy51cGRhdGUoZGF0YSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGRhdGEubWFwPElSYWRpb0dyb3VwSXRlbT4oKGdyb3VwKSA9PiB7XG4gICAgICAgICAgICBncm91cC5kaXNhYmxlQnlLZXlzID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAoZ3JvdXAuaXRlbSAmJiB0aGlzLmtleXNEaXNhYmxlKCk/LmluY2x1ZGVzKGdyb3VwLml0ZW1bdGhpcy5maWVsZEtleSgpXSkpIHtcbiAgICAgICAgICAgICAgZ3JvdXAuZGlzYWJsZUJ5S2V5cyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZ3JvdXA7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub3V0RnVuY3Rpb25zQ29udHJvbC5lbWl0KHtcbiAgICAgIGNoZWNrSXNWYWxpZDogdGhpcy5jaGVja1ZhbGlkLmJpbmQodGhpcyksXG4gICAgICByZXNldEVycm9yOiB0aGlzLnJlc2V0RXJyb3IuYmluZCh0aGlzKSxcbiAgICAgIHJlc2V0OiBhc3luYyAoKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnVwZGF0ZShkYXRhID0+IHtcbiAgICAgICAgICByZXR1cm4gZGF0YS5tYXA8SVJhZGlvR3JvdXBJdGVtPigoZ3JvdXApID0+IHtcbiAgICAgICAgICAgIGdyb3VwLml0ZW0uYWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gZ3JvdXA7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJlc2V0RXJyb3IoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8vICNyZWdpb24gRlVOQ1RJT05TXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVyQ2xpY2tCdXR0b24oZXZlbnQ6IElCdXR0b24pIHtcbiAgICB0aGlzLm91dENsaWNrQnV0dG9uLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZXJDaGFuZ2UoZGF0YUV2ZW50OiB7IGFjdGl2ZTogYm9vbGVhbjsga2V5OiBhbnkgfSkge1xuICAgIGlmICh0aGlzLmRpc2FibGUoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBldmVudDogYW55ID0gZGF0YUV2ZW50O1xuXG4gICAgdGhpcy5ncm91cHMudXBkYXRlKGRhdGEgPT4ge1xuICAgICAgcmV0dXJuIGRhdGEubWFwPElSYWRpb0dyb3VwSXRlbT4oKGdyb3VwKSA9PiB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBncm91cC5pdGVtO1xuXG4gICAgICAgIGl0ZW0uYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIGlmIChpdGVtW3RoaXMuZmllbGRLZXkoKV0gPT09IGRhdGFFdmVudC5rZXkpIHtcbiAgICAgICAgICBpdGVtLmFjdGl2ZSA9IGRhdGFFdmVudC5hY3RpdmU7XG4gICAgICAgICAgZXZlbnQuaXRlbSA9IGl0ZW07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGdyb3VwO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgdGhpcy5vdXRDaGFuZ2UuZW1pdChldmVudCk7XG4gICAgdGhpcy5jaGVja1ZhbGlkKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNoZWNrVmFsaWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgdGhpcy5pc0Vycm9yUmVxdWlyZWQuc2V0KGZhbHNlKTtcbiAgICBpZiAoIXRoaXMudmFsaWRSZXF1aXJlZCgpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmlzRXJyb3JSZXF1aXJlZC5zZXQoIXRoaXMuZ3JvdXBzKCk/LnNvbWUoKGdyb3VwOiBJUmFkaW9Hcm91cEl0ZW0pID0+IGdyb3VwLml0ZW0/LmFjdGl2ZSkpO1xuXG4gICAgcmV0dXJuICF0aGlzLmlzRXJyb3JSZXF1aXJlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyByZXNldEVycm9yKCkge1xuICAgIHRoaXMuaXNFcnJvclJlcXVpcmVkLnNldChmYWxzZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHctZnVsbFwiPlxuICBAaWYgKGxhYmVsQ29uZmlnKCk7YXMgbGFiZWxDb25maWcpIHtcbiAgICA8bGlic191aS1jb21wb25lbnRzLWxhYmVsIFtjbGFzc0luY2x1ZGVdPVwibGFiZWxDb25maWcuY2xhc3NJbmNsdWRlXCJcbiAgICAgIFtsYWJlbExlZnRdPVwibGFiZWxDb25maWcubGFiZWxMZWZ0XCJcbiAgICAgIFtsYWJlbExlZnRDbGFzc109XCJsYWJlbENvbmZpZy5sYWJlbExlZnRDbGFzc1wiXG4gICAgICBbcmVxdWlyZWRdPVwibGFiZWxDb25maWcucmVxdWlyZWRcIlxuICAgICAgW2Rlc2NyaXB0aW9uXT1cImxhYmVsQ29uZmlnLmRlc2NyaXB0aW9uXCJcbiAgICAgIFtkZXNjcmlwdGlvbkNsYXNzXT1cImxhYmVsQ29uZmlnLmRlc2NyaXB0aW9uQ2xhc3NcIlxuICAgICAgW2xhYmVsUmlnaHRdPVwibGFiZWxDb25maWcubGFiZWxSaWdodFwiXG4gICAgICBbbGFiZWxSaWdodENsYXNzXT1cImxhYmVsQ29uZmlnLmxhYmVsUmlnaHRDbGFzc1wiXG4gICAgICBbb25seVNob3dDb3VudF09XCJsYWJlbENvbmZpZy5vbmx5U2hvd0NvdW50XCJcbiAgICAgIFtidXR0b25zTGVmdF09XCJsYWJlbENvbmZpZy5idXR0b25zTGVmdFwiXG4gICAgICBbZGlzYWJsZUJ1dHRvbnNMZWZ0XT1cImxhYmVsQ29uZmlnLmRpc2FibGVCdXR0b25zTGVmdCB8fCBkaXNhYmxlKClcIlxuICAgICAgW2hhc1RvZ2dsZV09XCJsYWJlbENvbmZpZy5oYXNUb2dnbGVcIlxuICAgICAgW3RvZ2dsZUFjdGl2ZV09XCJsYWJlbENvbmZpZy50b2dnbGVBY3RpdmVcIlxuICAgICAgW3RvZ2dsZURpc2FibGVdPVwibGFiZWxDb25maWcudG9nZ2xlRGlzYWJsZSB8fCBkaXNhYmxlKClcIlxuICAgICAgW3BvcG92ZXJdPVwibGFiZWxDb25maWcucG9wb3ZlclwiXG4gICAgICBbaWNvblBvcG92ZXJDbGFzc109XCJsYWJlbENvbmZpZy5pY29uUG9wb3ZlckNsYXNzXCJcbiAgICAgIFtvbmx5U2hvd0NvdW50XT1cImxhYmVsQ29uZmlnLm9ubHlTaG93Q291bnRcIlxuICAgICAgW2xpbWl0TGVuZ3RoXT1cImxhYmVsQ29uZmlnLmxpbWl0TGVuZ3RoXCJcbiAgICAgIFtidXR0b25zRGVzY3JpcHRpb25dPVwibGFiZWxDb25maWcuYnV0dG9uc0Rlc2NyaXB0aW9uXCJcbiAgICAgIFtkaXNhYmxlQnV0dG9uc0Rlc2NyaXB0aW9uXT1cImxhYmVsQ29uZmlnLmRpc2FibGVCdXR0b25zRGVzY3JpcHRpb24gfHwgZGlzYWJsZSgpXCJcbiAgICAgIFtidXR0b25zRGVzY3JpcHRpb25Db250YWluZXJDbGFzc109XCJsYWJlbENvbmZpZy5idXR0b25zRGVzY3JpcHRpb25Db250YWluZXJDbGFzc1wiXG4gICAgICBbY291bnRdPVwibGFiZWxDb25maWcuY291bnRcIlxuICAgICAgKG91dENsaWNrQnV0dG9uKT1cImhhbmRsZXJDbGlja0J1dHRvbigkZXZlbnQpXCIgLz5cbiAgfVxuICBAaWYgKGlzRXJyb3JSZXF1aXJlZCgpKSB7XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG1iLVs0cHhdXCI+XG4gICAgICA8aSBbY2xhc3NdPVwiJ2xpYnMtdWktaWNvbi1jbG9zZSBsaWJzLXVpLXRleHQtZXJyb3IgdGV4dC1bNnB4XSBwci1bNHB4XSdcIj48L2k+XG4gICAgICA8c3BhbiBjbGFzcz1cImxpYnMtdWktZm9udC1oNXIgbGlicy11aS10ZXh0LWVycm9yXCJcbiAgICAgICAgW2lubmVySHRtbF09XCIodmFsaWRSZXF1aXJlZCgpPy5tZXNzYWdlIHx8IEVSUk9SX01FU1NBR0VfRU1QVFlfVkFMSUQpfCB0cmFuc2xhdGU6dmFsaWRSZXF1aXJlZCgpPy5pbnRlcnBvbGF0ZVBhcmFtc1wiPlxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICB9XG4gIDxkaXYgY2xhc3M9XCJsaWJzLXVpLXJhZGlvLWdyb3VwXCJcbiAgICBbY2xhc3MuZmxleF09XCJob3Jpem9udGFsKClcIj5cbiAgICBAZm9yIChncm91cCBvZiBncm91cHMoKTsgdHJhY2sgZ3JvdXA7bGV0IGlzTGFzdCA9ICRsYXN0KSB7XG4gICAgICA8ZGl2IFtjbGFzc109XCJob3Jpem9udGFsKCkgPyAoKGlzTGFzdCAmJiBpZ25vcmVDbGFzc01hcmdpbkxhc3RJdGVtKCkpID8gJycgOiAoaG9yaXpvbnRhbENsYXNzSW5jbHVkZSgpIHx8ICdtci1bMjRweF0nKSkgOiAnJ1wiPlxuICAgICAgICA8ZGl2IFtjbGFzc109XCJjbGFzc0l0ZW1JbmNsdWRlKClcIj5cbiAgICAgICAgICA8bGlic191aS1jb21wb25lbnRzLXJhZGlvLXNpbmdsZSBbbGFiZWxJbnRlcnBvbGF0ZVBhcmFtc109J2dyb3VwLml0ZW0ubGFiZWxJbnRlcnBvbGF0ZVBhcmFtcydcbiAgICAgICAgICAgIFtsYWJlbF09XCJncm91cC5pdGVtLmxhYmVsIHx8ICcgJ1wiXG4gICAgICAgICAgICBbYWN0aXZlXT1cImdyb3VwLml0ZW0uYWN0aXZlIHx8IGZhbHNlXCJcbiAgICAgICAgICAgIFtrZXldPVwiZ3JvdXAuaXRlbVtmaWVsZEtleSgpXVwiXG4gICAgICAgICAgICBbZGlzYWJsZV09XCJncm91cFsnZGlzYWJsZUJ5S2V5cyddIHx8IGRpc2FibGUoKSB8fCBncm91cC5pdGVtLmRpc2FibGUgfHwgZmFsc2VcIlxuICAgICAgICAgICAgW2Rpc2FibGVMYWJlbF09XCIgZ3JvdXAuaXRlbS5kaXNhYmxlTGFiZWwgfHwgZmFsc2VcIlxuICAgICAgICAgICAgW2NsYXNzTGFiZWxJbmNsdWRlXT1cImNsYXNzTGFiZWxJbmNsdWRlKCkgfHwgZ3JvdXAuaXRlbS5jbGFzc0xhYmVsSW5jbHVkZSB8fCAnbGlicy11aS1mb250LWg1cidcIlxuICAgICAgICAgICAgW2NsYXNzSW5jbHVkZV09XCJjbGFzc0luY2x1ZGUoKSB8fCBncm91cC5pdGVtLmNsYXNzSW5jbHVkZSB8fCAnJ1wiXG4gICAgICAgICAgICBbekluZGV4TGFiZWxdPVwiZ3JvdXAuaXRlbS56SW5kZXhMYWJlbFwiXG4gICAgICAgICAgICBbdHlwZVJhZGlvXT1cInR5cGVSYWRpbygpXCJcbiAgICAgICAgICAgIFthdmF0YXJDb25maWddPVwiZ3JvdXAuaXRlbS5hdmF0YXJDb25maWdcIlxuICAgICAgICAgICAgKG91dENoYW5nZSk9XCJoYW5kbGVyQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgW3BvcG92ZXJdPVwiZ3JvdXAuaXRlbS5wb3BvdmVyXCJcbiAgICAgICAgICAgIFtjbGlja0V4YWN0bHldPVwiY2xpY2tFeGFjdGx5KClcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgQGlmIChncm91cC5pdGVtLmFjdGl2ZSB8fCBhbHdheXNTaG93U3ViVGV4dCgpKSB7XG4gICAgICAgICAgQGlmIChncm91cC5zdWJUZXh0KSB7XG4gICAgICAgICAgICA8ZGl2IFtjbGFzc109XCInbGlicy11aS1yYWRpby1ncm91cC1zdWItdGV4dCAnICsgKGdyb3VwLmNsYXNzSW5jbHVkZVN1YlRleHQgPyBncm91cC5jbGFzc0luY2x1ZGVTdWJUZXh0OicnKVwiXG4gICAgICAgICAgICAgIFtpbm5lckh0bWxdPVwiZ3JvdXAuc3ViVGV4dCB8IHRyYW5zbGF0ZVwiPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJncm91cD8uc3ViVGVtcGxhdGUgfHwgbnVsbDtjb250ZXh0OntpdGVtOmdyb3VwLml0ZW19XCIgLz5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL3JhZGlvL2dyb3VwL3NyYy9ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzLXVpL2NvbXBvbmVudHMvcmFkaW8vZ3JvdXAvc3JjL2dyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVILE9BQU8sRUFBVSw4QkFBOEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ25GLE9BQU8sRUFBZSxvQ0FBb0MsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQWdCdEQsTUFBTSxPQUFPLG1DQUFtQztJQUM5QyxtQkFBbUI7SUFDQSx5QkFBeUIsR0FBRyx5QkFBeUIsQ0FBQztJQUMvRCxlQUFlLEdBQUcsTUFBTSxDQUFVLEtBQUssQ0FBQyxDQUFBO0lBRWxELGdCQUFnQjtJQUNQLFFBQVEsR0FBRyxLQUFLLENBQWlCLEtBQUssRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2hGLFNBQVMsR0FBRyxLQUFLLEVBQVcsQ0FBQztJQUM3QixXQUFXLEdBQUcsS0FBSyxFQUFpQixDQUFDO0lBQ3JDLE1BQU0sR0FB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RUFBRSxFQUFFLENBQUM7WUFDMUIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRS9GLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVPLEtBQUssQ0FBQyxVQUFVO1FBQ3RCLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7d0dBM0hVLG1DQUFtQzs0RkFBbkMsbUNBQW1DLHcrRUN2QmhELDI3R0FvRUEsMEtEbkRJLGVBQWUsNEZBQUUsZ0JBQWdCLG9KQUNqQyw4QkFBOEIsNHFCQUM5QixvQ0FBb0M7OzRGQUkzQixtQ0FBbUM7a0JBYi9DLFNBQVM7K0JBRUUsZ0NBQWdDLGNBRzlCLElBQUksV0FDUDt3QkFDUCxlQUFlLEVBQUUsZ0JBQWdCO3dCQUNqQyw4QkFBOEI7d0JBQzlCLG9DQUFvQztxQkFDckMsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCwgZWZmZWN0LCBpbnB1dCwgbW9kZWwsIG91dHB1dCwgc2lnbmFsLCB1bnRyYWNrZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElCdXR0b24gfSBmcm9tICdAbGlicy11aS9jb21wb25lbnRzLWJ1dHRvbnMtYnV0dG9uJztcbmltcG9ydCB7IElMYWJlbCwgTGlic1VpQ29tcG9uZW50c0xhYmVsQ29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1sYWJlbCc7XG5pbXBvcnQgeyBJUmFkaW9FdmVudCwgTGlic1VpQ29tcG9uZW50c1JhZGlvU2luZ2xlQ29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1yYWRpby1zaW5nbGUnO1xuaW1wb3J0IHsgRVJST1JfTUVTU0FHRV9FTVBUWV9WQUxJRCwgaXNOaWwgfSBmcm9tICdAbGlicy11aS91dGlscyc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IElSYWRpb0dyb3VwRnVuY3Rpb25Db250cm9sRXZlbnQsIElSYWRpb0dyb3VwSXRlbSB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2xpYnNfdWktY29tcG9uZW50cy1yYWRpby1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBUcmFuc2xhdGVNb2R1bGUsIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgTGlic1VpQ29tcG9uZW50c0xhYmVsQ29tcG9uZW50LFxuICAgIExpYnNVaUNvbXBvbmVudHNSYWRpb1NpbmdsZUNvbXBvbmVudFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBMaWJzVWlDb21wb25lbnRzUmFkaW9Hcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vICNyZWdpb24gUFJPUEVSVFlcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEVSUk9SX01FU1NBR0VfRU1QVFlfVkFMSUQgPSBFUlJPUl9NRVNTQUdFX0VNUFRZX1ZBTElEO1xuICBwcm90ZWN0ZWQgaXNFcnJvclJlcXVpcmVkID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKVxuXG4gIC8vICNyZWdpb24gSU5QVVRcbiAgcmVhZG9ubHkgZmllbGRLZXkgPSBpbnB1dDxzdHJpbmcsIHN0cmluZz4oJ2tleScsIHsgdHJhbnNmb3JtOiB2YWx1ZSA9PiB2YWx1ZSB8fCAna2V5JyB9KTtcbiAgcmVhZG9ubHkga2V5QWN0aXZlID0gaW5wdXQ8dW5rbm93bj4oKTtcbiAgcmVhZG9ubHkga2V5c0Rpc2FibGUgPSBpbnB1dDxBcnJheTxzdHJpbmc+PigpO1xuICByZWFkb25seSBncm91cHMgPSBtb2RlbDxBcnJheTxJUmFkaW9Hcm91cEl0ZW0+PihbXSk7XG4gIHJlYWRvbmx5IGRpc2FibGUgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkLCBib29sZWFuIHwgdW5kZWZpbmVkPihmYWxzZSwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/IGZhbHNlIH0pO1xuICByZWFkb25seSBjbGlja0V4YWN0bHkgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkLCBib29sZWFuIHwgdW5kZWZpbmVkPih0cnVlLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgaG9yaXpvbnRhbCA9IGlucHV0PGJvb2xlYW4gfCB1bmRlZmluZWQsIGJvb2xlYW4gfCB1bmRlZmluZWQ+KGZhbHNlLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gZmFsc2UgfSk7XG4gIHJlYWRvbmx5IGxhYmVsQ29uZmlnID0gaW5wdXQ8SUxhYmVsIHwgdW5kZWZpbmVkPigpXG4gIHJlYWRvbmx5IHZhbGlkUmVxdWlyZWQgPSBpbnB1dDx7XG4gICAgbWVzc2FnZT86IHN0cmluZztcbiAgICBpbnRlcnBvbGF0ZVBhcmFtcz86IHsgYW55OiBhbnkgfTtcbiAgfSB8IHVuZGVmaW5lZD4oKVxuICByZWFkb25seSBpZ25vcmVDbGFzc01hcmdpbkxhc3RJdGVtID0gaW5wdXQ8Ym9vbGVhbiB8IHVuZGVmaW5lZD4oZmFsc2UpO1xuICByZWFkb25seSB0eXBlUmFkaW8gPSBpbnB1dDwnbm9ybWFsJyB8ICdtZWRpdW0nIHwgdW5kZWZpbmVkLCAnbm9ybWFsJyB8ICdtZWRpdW0nIHwgdW5kZWZpbmVkPignbm9ybWFsJywgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/ICdub3JtYWwnIH0pO1xuICByZWFkb25seSBjbGFzc0luY2x1ZGUgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQsIHN0cmluZyB8IHVuZGVmaW5lZD4oJycsIHsgdHJhbnNmb3JtOiB2YWx1ZSA9PiB2YWx1ZSA/PyAnJyB9KTtcbiAgcmVhZG9ubHkgY2xhc3NMYWJlbEluY2x1ZGUgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQsIHN0cmluZyB8IHVuZGVmaW5lZD4oJycsIHsgdHJhbnNmb3JtOiB2YWx1ZSA9PiB2YWx1ZSA/PyAnJyB9KTtcbiAgcmVhZG9ubHkgY2xhc3NJdGVtSW5jbHVkZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZCwgc3RyaW5nIHwgdW5kZWZpbmVkPigncHktWzRweF0nLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gJ3B5LVs0cHhdJyB9KTtcbiAgcmVhZG9ubHkgYWx3YXlzU2hvd1N1YlRleHQgPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkPigpO1xuICByZWFkb25seSBob3Jpem9udGFsQ2xhc3NJbmNsdWRlID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkLCBzdHJpbmcgfCB1bmRlZmluZWQ+KCcnLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgPz8gJycgfSk7XG5cbiAgLy8gI3JlZ2lvbiBPVVRQVVRcbiAgcmVhZG9ubHkgb3V0Q2xpY2tCdXR0b24gPSBvdXRwdXQ8SUJ1dHRvbj4oKTtcbiAgcmVhZG9ubHkgb3V0Q2hhbmdlID0gb3V0cHV0PElSYWRpb0V2ZW50PigpO1xuICByZWFkb25seSBvdXRGdW5jdGlvbnNDb250cm9sID0gb3V0cHV0PElSYWRpb0dyb3VwRnVuY3Rpb25Db250cm9sRXZlbnQ+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGlmIChpc05pbCh0aGlzLmtleUFjdGl2ZSgpKSB8fCAhdGhpcy5maWVsZEtleSgpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnVwZGF0ZShkYXRhID0+IHtcbiAgICAgICAgICByZXR1cm4gZGF0YS5tYXA8SVJhZGlvR3JvdXBJdGVtPigoZ3JvdXApID0+IHtcbiAgICAgICAgICAgIGdyb3VwLml0ZW0uYWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAoZ3JvdXAuaXRlbSAmJiBncm91cC5pdGVtW3RoaXMuZmllbGRLZXkoKV0gPT09IHRoaXMua2V5QWN0aXZlKCkpIHtcbiAgICAgICAgICAgICAgZ3JvdXAuaXRlbS5hY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGdyb3VwO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgfSk7XG5cbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHRoaXMua2V5c0Rpc2FibGUoKSkgfHwgIXRoaXMuZmllbGRLZXkoKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICB0aGlzLmdyb3Vwcy51cGRhdGUoZGF0YSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGRhdGEubWFwPElSYWRpb0dyb3VwSXRlbT4oKGdyb3VwKSA9PiB7XG4gICAgICAgICAgICBncm91cC5kaXNhYmxlQnlLZXlzID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAoZ3JvdXAuaXRlbSAmJiB0aGlzLmtleXNEaXNhYmxlKCk/LmluY2x1ZGVzKGdyb3VwLml0ZW1bdGhpcy5maWVsZEtleSgpXSkpIHtcbiAgICAgICAgICAgICAgZ3JvdXAuZGlzYWJsZUJ5S2V5cyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZ3JvdXA7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub3V0RnVuY3Rpb25zQ29udHJvbC5lbWl0KHtcbiAgICAgIGNoZWNrSXNWYWxpZDogdGhpcy5jaGVja1ZhbGlkLmJpbmQodGhpcyksXG4gICAgICByZXNldEVycm9yOiB0aGlzLnJlc2V0RXJyb3IuYmluZCh0aGlzKSxcbiAgICAgIHJlc2V0OiBhc3luYyAoKSA9PiB7XG4gICAgICAgIHRoaXMuZ3JvdXBzLnVwZGF0ZShkYXRhID0+IHtcbiAgICAgICAgICByZXR1cm4gZGF0YS5tYXA8SVJhZGlvR3JvdXBJdGVtPigoZ3JvdXApID0+IHtcbiAgICAgICAgICAgIGdyb3VwLml0ZW0uYWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4gZ3JvdXA7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJlc2V0RXJyb3IoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8vICNyZWdpb24gRlVOQ1RJT05TXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVyQ2xpY2tCdXR0b24oZXZlbnQ6IElCdXR0b24pIHtcbiAgICB0aGlzLm91dENsaWNrQnV0dG9uLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZXJDaGFuZ2UoZGF0YUV2ZW50OiB7IGFjdGl2ZTogYm9vbGVhbjsga2V5OiBhbnkgfSkge1xuICAgIGlmICh0aGlzLmRpc2FibGUoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBldmVudDogYW55ID0gZGF0YUV2ZW50O1xuXG4gICAgdGhpcy5ncm91cHMudXBkYXRlKGRhdGEgPT4ge1xuICAgICAgcmV0dXJuIGRhdGEubWFwPElSYWRpb0dyb3VwSXRlbT4oKGdyb3VwKSA9PiB7XG4gICAgICAgIGNvbnN0IGl0ZW0gPSBncm91cC5pdGVtO1xuXG4gICAgICAgIGl0ZW0uYWN0aXZlID0gZmFsc2U7XG4gICAgICAgIGlmIChpdGVtW3RoaXMuZmllbGRLZXkoKV0gPT09IGRhdGFFdmVudC5rZXkpIHtcbiAgICAgICAgICBpdGVtLmFjdGl2ZSA9IGRhdGFFdmVudC5hY3RpdmU7XG4gICAgICAgICAgZXZlbnQuaXRlbSA9IGl0ZW07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGdyb3VwO1xuICAgICAgfSk7XG4gICAgfSk7XG4gICAgdGhpcy5vdXRDaGFuZ2UuZW1pdChldmVudCk7XG4gICAgdGhpcy5jaGVja1ZhbGlkKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNoZWNrVmFsaWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgdGhpcy5pc0Vycm9yUmVxdWlyZWQuc2V0KGZhbHNlKTtcbiAgICBpZiAoIXRoaXMudmFsaWRSZXF1aXJlZCgpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmlzRXJyb3JSZXF1aXJlZC5zZXQoIXRoaXMuZ3JvdXBzKCk/LnNvbWUoKGdyb3VwOiBJUmFkaW9Hcm91cEl0ZW0pID0+IGdyb3VwLml0ZW0/LmFjdGl2ZSkpO1xuXG4gICAgcmV0dXJuICF0aGlzLmlzRXJyb3JSZXF1aXJlZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyByZXNldEVycm9yKCkge1xuICAgIHRoaXMuaXNFcnJvclJlcXVpcmVkLnNldChmYWxzZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHctZnVsbFwiPlxuICBAaWYgKGxhYmVsQ29uZmlnKCk7YXMgbGFiZWxDb25maWcpIHtcbiAgICA8bGlic191aS1jb21wb25lbnRzLWxhYmVsIFtjbGFzc0luY2x1ZGVdPVwibGFiZWxDb25maWcuY2xhc3NJbmNsdWRlXCJcbiAgICAgIFtsYWJlbExlZnRdPVwibGFiZWxDb25maWcubGFiZWxMZWZ0XCJcbiAgICAgIFtsYWJlbExlZnRDbGFzc109XCJsYWJlbENvbmZpZy5sYWJlbExlZnRDbGFzc1wiXG4gICAgICBbcmVxdWlyZWRdPVwibGFiZWxDb25maWcucmVxdWlyZWRcIlxuICAgICAgW2Rlc2NyaXB0aW9uXT1cImxhYmVsQ29uZmlnLmRlc2NyaXB0aW9uXCJcbiAgICAgIFtkZXNjcmlwdGlvbkNsYXNzXT1cImxhYmVsQ29uZmlnLmRlc2NyaXB0aW9uQ2xhc3NcIlxuICAgICAgW2xhYmVsUmlnaHRdPVwibGFiZWxDb25maWcubGFiZWxSaWdodFwiXG4gICAgICBbbGFiZWxSaWdodENsYXNzXT1cImxhYmVsQ29uZmlnLmxhYmVsUmlnaHRDbGFzc1wiXG4gICAgICBbb25seVNob3dDb3VudF09XCJsYWJlbENvbmZpZy5vbmx5U2hvd0NvdW50XCJcbiAgICAgIFtidXR0b25zTGVmdF09XCJsYWJlbENvbmZpZy5idXR0b25zTGVmdFwiXG4gICAgICBbZGlzYWJsZUJ1dHRvbnNMZWZ0XT1cImxhYmVsQ29uZmlnLmRpc2FibGVCdXR0b25zTGVmdCB8fCBkaXNhYmxlKClcIlxuICAgICAgW2hhc1RvZ2dsZV09XCJsYWJlbENvbmZpZy5oYXNUb2dnbGVcIlxuICAgICAgW3RvZ2dsZUFjdGl2ZV09XCJsYWJlbENvbmZpZy50b2dnbGVBY3RpdmVcIlxuICAgICAgW3RvZ2dsZURpc2FibGVdPVwibGFiZWxDb25maWcudG9nZ2xlRGlzYWJsZSB8fCBkaXNhYmxlKClcIlxuICAgICAgW3BvcG92ZXJdPVwibGFiZWxDb25maWcucG9wb3ZlclwiXG4gICAgICBbaWNvblBvcG92ZXJDbGFzc109XCJsYWJlbENvbmZpZy5pY29uUG9wb3ZlckNsYXNzXCJcbiAgICAgIFtvbmx5U2hvd0NvdW50XT1cImxhYmVsQ29uZmlnLm9ubHlTaG93Q291bnRcIlxuICAgICAgW2xpbWl0TGVuZ3RoXT1cImxhYmVsQ29uZmlnLmxpbWl0TGVuZ3RoXCJcbiAgICAgIFtidXR0b25zRGVzY3JpcHRpb25dPVwibGFiZWxDb25maWcuYnV0dG9uc0Rlc2NyaXB0aW9uXCJcbiAgICAgIFtkaXNhYmxlQnV0dG9uc0Rlc2NyaXB0aW9uXT1cImxhYmVsQ29uZmlnLmRpc2FibGVCdXR0b25zRGVzY3JpcHRpb24gfHwgZGlzYWJsZSgpXCJcbiAgICAgIFtidXR0b25zRGVzY3JpcHRpb25Db250YWluZXJDbGFzc109XCJsYWJlbENvbmZpZy5idXR0b25zRGVzY3JpcHRpb25Db250YWluZXJDbGFzc1wiXG4gICAgICBbY291bnRdPVwibGFiZWxDb25maWcuY291bnRcIlxuICAgICAgKG91dENsaWNrQnV0dG9uKT1cImhhbmRsZXJDbGlja0J1dHRvbigkZXZlbnQpXCIgLz5cbiAgfVxuICBAaWYgKGlzRXJyb3JSZXF1aXJlZCgpKSB7XG4gICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG1iLVs0cHhdXCI+XG4gICAgICA8aSBbY2xhc3NdPVwiJ2xpYnMtdWktaWNvbi1jbG9zZSBsaWJzLXVpLXRleHQtZXJyb3IgdGV4dC1bNnB4XSBwci1bNHB4XSdcIj48L2k+XG4gICAgICA8c3BhbiBjbGFzcz1cImxpYnMtdWktZm9udC1oNXIgbGlicy11aS10ZXh0LWVycm9yXCJcbiAgICAgICAgW2lubmVySHRtbF09XCIodmFsaWRSZXF1aXJlZCgpPy5tZXNzYWdlIHx8IEVSUk9SX01FU1NBR0VfRU1QVFlfVkFMSUQpfCB0cmFuc2xhdGU6dmFsaWRSZXF1aXJlZCgpPy5pbnRlcnBvbGF0ZVBhcmFtc1wiPlxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICB9XG4gIDxkaXYgY2xhc3M9XCJsaWJzLXVpLXJhZGlvLWdyb3VwXCJcbiAgICBbY2xhc3MuZmxleF09XCJob3Jpem9udGFsKClcIj5cbiAgICBAZm9yIChncm91cCBvZiBncm91cHMoKTsgdHJhY2sgZ3JvdXA7bGV0IGlzTGFzdCA9ICRsYXN0KSB7XG4gICAgICA8ZGl2XG4gICAgICAgIFtjbGFzc109XCJob3Jpem9udGFsKCkgPyAoKGlzTGFzdCAmJiBpZ25vcmVDbGFzc01hcmdpbkxhc3RJdGVtKCkpID8gJycgOiAoaG9yaXpvbnRhbENsYXNzSW5jbHVkZSgpIHx8ICdtci1bMjRweF0nKSkgOiAnJ1wiPlxuICAgICAgICA8ZGl2IFtjbGFzc109XCJjbGFzc0l0ZW1JbmNsdWRlKClcIj5cbiAgICAgICAgICA8bGlic191aS1jb21wb25lbnRzLXJhZGlvLXNpbmdsZSBbbGFiZWxJbnRlcnBvbGF0ZVBhcmFtc109J2dyb3VwLml0ZW0ubGFiZWxJbnRlcnBvbGF0ZVBhcmFtcydcbiAgICAgICAgICAgIFtsYWJlbF09XCJncm91cC5pdGVtLmxhYmVsIHx8ICcgJ1wiXG4gICAgICAgICAgICBbYWN0aXZlXT1cImdyb3VwLml0ZW0uYWN0aXZlIHx8IGZhbHNlXCJcbiAgICAgICAgICAgIFtrZXldPVwiZ3JvdXAuaXRlbVtmaWVsZEtleSgpXVwiXG4gICAgICAgICAgICBbZGlzYWJsZV09XCJncm91cFsnZGlzYWJsZUJ5S2V5cyddIHx8IGRpc2FibGUoKSB8fCBncm91cC5pdGVtLmRpc2FibGUgfHwgZmFsc2VcIlxuICAgICAgICAgICAgW2Rpc2FibGVMYWJlbF09XCIgZ3JvdXAuaXRlbS5kaXNhYmxlTGFiZWwgfHwgZmFsc2VcIlxuICAgICAgICAgICAgW2NsYXNzTGFiZWxJbmNsdWRlXT1cImNsYXNzTGFiZWxJbmNsdWRlKCkgfHwgZ3JvdXAuaXRlbS5jbGFzc0xhYmVsSW5jbHVkZSB8fCAnbGlicy11aS1mb250LWg1cidcIlxuICAgICAgICAgICAgW2NsYXNzSW5jbHVkZV09XCJjbGFzc0luY2x1ZGUoKSB8fCBncm91cC5pdGVtLmNsYXNzSW5jbHVkZSB8fCAnJ1wiXG4gICAgICAgICAgICBbekluZGV4TGFiZWxdPVwiZ3JvdXAuaXRlbS56SW5kZXhMYWJlbFwiXG4gICAgICAgICAgICBbdHlwZVJhZGlvXT1cInR5cGVSYWRpbygpXCJcbiAgICAgICAgICAgIFthdmF0YXJDb25maWddPVwiZ3JvdXAuaXRlbS5hdmF0YXJDb25maWdcIlxuICAgICAgICAgICAgKG91dENoYW5nZSk9XCJoYW5kbGVyQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgW3BvcG92ZXJdPVwiZ3JvdXAuaXRlbS5wb3BvdmVyXCJcbiAgICAgICAgICAgIFtjbGlja0V4YWN0bHldPVwiY2xpY2tFeGFjdGx5KClcIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgQGlmIChncm91cC5pdGVtLmFjdGl2ZSB8fCBhbHdheXNTaG93U3ViVGV4dCgpKSB7XG4gICAgICAgICAgQGlmIChncm91cC5zdWJUZXh0KSB7XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIFtjbGFzc109XCInbGlicy11aS1yYWRpby1ncm91cC1zdWItdGV4dCBsaWJzLXVpLWZvbnQtaDdyJyArIChncm91cC5jbGFzc0luY2x1ZGVTdWJUZXh0ID8gZ3JvdXAuY2xhc3NJbmNsdWRlU3ViVGV4dDonJylcIlxuICAgICAgICAgICAgICBbaW5uZXJIdG1sXT1cImdyb3VwLnN1YlRleHQgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZ3JvdXA/LnN1YlRlbXBsYXRlIHx8IG51bGw7Y29udGV4dDp7aXRlbTpncm91cC5pdGVtfVwiIC8+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -117,7 +117,7 @@ class LibsUiComponentsRadioGroupComponent {
117
117
  this.isErrorRequired.set(false);
118
118
  }
119
119
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
120
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioGroupComponent, isStandalone: true, selector: "libs_ui-components-radio-group", inputs: { fieldKey: { classPropertyName: "fieldKey", publicName: "fieldKey", isSignal: true, isRequired: false, transformFunction: null }, keyActive: { classPropertyName: "keyActive", publicName: "keyActive", isSignal: true, isRequired: false, transformFunction: null }, keysDisable: { classPropertyName: "keysDisable", publicName: "keysDisable", isSignal: true, isRequired: false, transformFunction: null }, groups: { classPropertyName: "groups", publicName: "groups", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, labelConfig: { classPropertyName: "labelConfig", publicName: "labelConfig", isSignal: true, isRequired: false, transformFunction: null }, validRequired: { classPropertyName: "validRequired", publicName: "validRequired", isSignal: true, isRequired: false, transformFunction: null }, ignoreClassMarginLastItem: { classPropertyName: "ignoreClassMarginLastItem", publicName: "ignoreClassMarginLastItem", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, classItemInclude: { classPropertyName: "classItemInclude", publicName: "classItemInclude", isSignal: true, isRequired: false, transformFunction: null }, alwaysShowSubText: { classPropertyName: "alwaysShowSubText", publicName: "alwaysShowSubText", isSignal: true, isRequired: false, transformFunction: null }, horizontalClassInclude: { classPropertyName: "horizontalClassInclude", publicName: "horizontalClassInclude", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { groups: "groupsChange", outClickButton: "outClickButton", outChange: "outChange", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div [class]=\"'libs-ui-radio-group-sub-text ' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;font-size:10px;font-family:var(--libs-ui-font-family-name, \"Arial\");font-weight:400;line-height:normal;margin-left:24px;margin-bottom:4px;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LibsUiComponentsLabelComponent, selector: "libs_ui-components-label", inputs: ["iconPopoverClass", "classInclude", "labelLeft", "labelLeftClass", "labelLeftBehindToggleButton", "popover", "required", "buttonsLeft", "disableButtonsLeft", "buttonsRight", "disableButtonsRight", "labelRight", "labelRightClass", "labelRightRequired", "hasToggle", "toggleSize", "toggleActive", "toggleDisable", "description", "descriptionClass", "buttonsDescription", "disableButtonsDescription", "buttonsDescriptionContainerClass", "onlyShowCount", "zIndexPopover", "timerDestroyPopover", "count", "limitLength"], outputs: ["outClickButton", "outSwitchEvent", "outLabelRightClick", "outLabelLeftClick"] }, { kind: "component", type: LibsUiComponentsRadioSingleComponent, selector: "libs_ui-components-radio-single", inputs: ["key", "active", "classInclude", "label", "labelInterpolateParams", "ignorePopoverLabel", "classLabelInclude", "linkImage", "linkImageError", "avatarConfig", "classImageInclude", "imgTypeIcon", "bullet", "popover", "disable", "disableLabel", "clickExactly", "typeRadio", "ignoreRadio", "zIndexLabel", "classIncludeIcon", "dataComponentOutlet", "componentOutlet"], outputs: ["activeChange", "outClickLabel", "outChange", "outChangStageFlagMousePopover"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
120
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioGroupComponent, isStandalone: true, selector: "libs_ui-components-radio-group", inputs: { fieldKey: { classPropertyName: "fieldKey", publicName: "fieldKey", isSignal: true, isRequired: false, transformFunction: null }, keyActive: { classPropertyName: "keyActive", publicName: "keyActive", isSignal: true, isRequired: false, transformFunction: null }, keysDisable: { classPropertyName: "keysDisable", publicName: "keysDisable", isSignal: true, isRequired: false, transformFunction: null }, groups: { classPropertyName: "groups", publicName: "groups", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, labelConfig: { classPropertyName: "labelConfig", publicName: "labelConfig", isSignal: true, isRequired: false, transformFunction: null }, validRequired: { classPropertyName: "validRequired", publicName: "validRequired", isSignal: true, isRequired: false, transformFunction: null }, ignoreClassMarginLastItem: { classPropertyName: "ignoreClassMarginLastItem", publicName: "ignoreClassMarginLastItem", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, classItemInclude: { classPropertyName: "classItemInclude", publicName: "classItemInclude", isSignal: true, isRequired: false, transformFunction: null }, alwaysShowSubText: { classPropertyName: "alwaysShowSubText", publicName: "alwaysShowSubText", isSignal: true, isRequired: false, transformFunction: null }, horizontalClassInclude: { classPropertyName: "horizontalClassInclude", publicName: "horizontalClassInclude", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { groups: "groupsChange", outClickButton: "outClickButton", outChange: "outChange", outFunctionsControl: "outFunctionsControl" }, ngImport: i0, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div\n [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div\n [class]=\"'libs-ui-radio-group-sub-text libs-ui-font-h7r' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;margin-left:24px;margin-bottom:4px;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LibsUiComponentsLabelComponent, selector: "libs_ui-components-label", inputs: ["iconPopoverClass", "classInclude", "labelLeft", "labelLeftClass", "labelLeftBehindToggleButton", "popover", "required", "buttonsLeft", "disableButtonsLeft", "buttonsRight", "disableButtonsRight", "labelRight", "labelRightClass", "labelRightRequired", "hasToggle", "toggleSize", "toggleActive", "toggleDisable", "description", "descriptionClass", "buttonsDescription", "disableButtonsDescription", "buttonsDescriptionContainerClass", "onlyShowCount", "zIndexPopover", "timerDestroyPopover", "count", "limitLength"], outputs: ["outClickButton", "outSwitchEvent", "outLabelRightClick", "outLabelLeftClick"] }, { kind: "component", type: LibsUiComponentsRadioSingleComponent, selector: "libs_ui-components-radio-single", inputs: ["key", "active", "classInclude", "label", "labelInterpolateParams", "ignorePopoverLabel", "classLabelInclude", "linkImage", "linkImageError", "avatarConfig", "classImageInclude", "imgTypeIcon", "bullet", "popover", "disable", "disableLabel", "clickExactly", "typeRadio", "ignoreRadio", "zIndexLabel", "classIncludeIcon", "dataComponentOutlet", "componentOutlet"], outputs: ["activeChange", "outClickLabel", "outChange", "outChangStageFlagMousePopover"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
121
121
  }
122
122
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioGroupComponent, decorators: [{
123
123
  type: Component,
@@ -125,7 +125,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
125
125
  TranslateModule, NgTemplateOutlet,
126
126
  LibsUiComponentsLabelComponent,
127
127
  LibsUiComponentsRadioSingleComponent
128
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div [class]=\"'libs-ui-radio-group-sub-text ' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;font-size:10px;font-family:var(--libs-ui-font-family-name, \"Arial\");font-weight:400;line-height:normal;margin-left:24px;margin-bottom:4px;width:100%}\n"] }]
128
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div\n [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div\n [class]=\"'libs-ui-radio-group-sub-text libs-ui-font-h7r' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n", styles: [".libs-ui-radio-group .libs-ui-radio-group-sub-text{color:#9ca2ad;margin-left:24px;margin-bottom:4px;width:100%}\n"] }]
129
129
  }], ctorParameters: () => [] });
130
130
 
131
131
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"libs-ui-components-radio-group.mjs","sources":["../../../../../../libs-ui/components/radio/group/src/group.component.ts","../../../../../../libs-ui/components/radio/group/src/group.component.html","../../../../../../libs-ui/components/radio/group/src/libs-ui-components-radio-group.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, OnInit, effect, input, model, output, signal, untracked } from '@angular/core';\nimport { IButton } from '@libs-ui/components-buttons-button';\nimport { ILabel, LibsUiComponentsLabelComponent } from '@libs-ui/components-label';\nimport { IRadioEvent, LibsUiComponentsRadioSingleComponent } from '@libs-ui/components-radio-single';\nimport { ERROR_MESSAGE_EMPTY_VALID, isNil } from '@libs-ui/utils';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { IRadioGroupFunctionControlEvent, IRadioGroupItem } from './interfaces';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'libs_ui-components-radio-group',\n templateUrl: './group.component.html',\n styleUrls: ['./group.component.scss'],\n standalone: true,\n imports: [\n TranslateModule, NgTemplateOutlet,\n LibsUiComponentsLabelComponent,\n LibsUiComponentsRadioSingleComponent\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LibsUiComponentsRadioGroupComponent implements OnInit {\n // #region PROPERTY\n protected readonly ERROR_MESSAGE_EMPTY_VALID = ERROR_MESSAGE_EMPTY_VALID;\n protected isErrorRequired = signal<boolean>(false)\n\n // #region INPUT\n readonly fieldKey = input<string, string>('key', { transform: value => value || 'key' });\n readonly keyActive = input<unknown>();\n readonly keysDisable = input<Array<string>>();\n readonly groups = model<Array<IRadioGroupItem>>([]);\n readonly disable = input<boolean | undefined, boolean | undefined>(false, { transform: value => value ?? false });\n readonly clickExactly = input<boolean | undefined, boolean | undefined>(true, { transform: value => value ?? true });\n readonly horizontal = input<boolean | undefined, boolean | undefined>(false, { transform: value => value ?? false });\n readonly labelConfig = input<ILabel | undefined>()\n readonly validRequired = input<{\n message?: string;\n interpolateParams?: { any: any };\n } | undefined>()\n readonly ignoreClassMarginLastItem = input<boolean | undefined>(false);\n readonly typeRadio = input<'normal' | 'medium' | undefined, 'normal' | 'medium' | undefined>('normal', { transform: value => value ?? 'normal' });\n readonly classInclude = input<string | undefined, string | undefined>('', { transform: value => value ?? '' });\n readonly classLabelInclude = input<string | undefined, string | undefined>('', { transform: value => value ?? '' });\n readonly classItemInclude = input<string | undefined, string | undefined>('py-[4px]', { transform: value => value ?? 'py-[4px]' });\n readonly alwaysShowSubText = input<boolean | undefined>();\n readonly horizontalClassInclude = input<string | undefined, string | undefined>('', { transform: value => value ?? '' });\n\n // #region OUTPUT\n readonly outClickButton = output<IButton>();\n readonly outChange = output<IRadioEvent>();\n readonly outFunctionsControl = output<IRadioGroupFunctionControlEvent>();\n\n constructor() {\n effect(() => {\n if (isNil(this.keyActive()) || !this.fieldKey()) {\n return;\n }\n untracked(() => {\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n group.item.active = false;\n if (group.item && group.item[this.fieldKey()] === this.keyActive()) {\n group.item.active = true;\n }\n return group;\n });\n });\n })\n });\n\n effect(() => {\n if (!Array.isArray(this.keysDisable()) || !this.fieldKey()) {\n return;\n }\n untracked(() => {\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n group.disableByKeys = false;\n if (group.item && this.keysDisable()?.includes(group.item[this.fieldKey()])) {\n group.disableByKeys = true;\n }\n return group;\n });\n });\n })\n });\n }\n\n ngOnInit() {\n this.outFunctionsControl.emit({\n checkIsValid: this.checkValid.bind(this),\n resetError: this.resetError.bind(this),\n reset: async () => {\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n group.item.active = false;\n return group;\n });\n });\n this.resetError();\n }\n });\n }\n\n // #region FUNCTIONS\n protected async handlerClickButton(event: IButton) {\n this.outClickButton.emit(event);\n }\n\n protected async handlerChange(dataEvent: { active: boolean; key: any }) {\n if (this.disable()) {\n return;\n }\n const event: any = dataEvent;\n\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n const item = group.item;\n\n item.active = false;\n if (item[this.fieldKey()] === dataEvent.key) {\n item.active = dataEvent.active;\n event.item = item;\n }\n return group;\n });\n });\n this.outChange.emit(event);\n this.checkValid();\n }\n\n private async checkValid(): Promise<boolean> {\n this.isErrorRequired.set(false);\n if (!this.validRequired()) {\n return true;\n }\n\n this.isErrorRequired.set(!this.groups()?.some((group: IRadioGroupItem) => group.item?.active));\n\n return !this.isErrorRequired();\n }\n\n private async resetError() {\n this.isErrorRequired.set(false);\n }\n}\n","<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div [class]=\"'libs-ui-radio-group-sub-text ' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libs-ui-components-radio-group.mjs","sources":["../../../../../../libs-ui/components/radio/group/src/group.component.ts","../../../../../../libs-ui/components/radio/group/src/group.component.html","../../../../../../libs-ui/components/radio/group/src/libs-ui-components-radio-group.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, OnInit, effect, input, model, output, signal, untracked } from '@angular/core';\nimport { IButton } from '@libs-ui/components-buttons-button';\nimport { ILabel, LibsUiComponentsLabelComponent } from '@libs-ui/components-label';\nimport { IRadioEvent, LibsUiComponentsRadioSingleComponent } from '@libs-ui/components-radio-single';\nimport { ERROR_MESSAGE_EMPTY_VALID, isNil } from '@libs-ui/utils';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { IRadioGroupFunctionControlEvent, IRadioGroupItem } from './interfaces';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'libs_ui-components-radio-group',\n templateUrl: './group.component.html',\n styleUrls: ['./group.component.scss'],\n standalone: true,\n imports: [\n TranslateModule, NgTemplateOutlet,\n LibsUiComponentsLabelComponent,\n LibsUiComponentsRadioSingleComponent\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LibsUiComponentsRadioGroupComponent implements OnInit {\n // #region PROPERTY\n protected readonly ERROR_MESSAGE_EMPTY_VALID = ERROR_MESSAGE_EMPTY_VALID;\n protected isErrorRequired = signal<boolean>(false)\n\n // #region INPUT\n readonly fieldKey = input<string, string>('key', { transform: value => value || 'key' });\n readonly keyActive = input<unknown>();\n readonly keysDisable = input<Array<string>>();\n readonly groups = model<Array<IRadioGroupItem>>([]);\n readonly disable = input<boolean | undefined, boolean | undefined>(false, { transform: value => value ?? false });\n readonly clickExactly = input<boolean | undefined, boolean | undefined>(true, { transform: value => value ?? true });\n readonly horizontal = input<boolean | undefined, boolean | undefined>(false, { transform: value => value ?? false });\n readonly labelConfig = input<ILabel | undefined>()\n readonly validRequired = input<{\n message?: string;\n interpolateParams?: { any: any };\n } | undefined>()\n readonly ignoreClassMarginLastItem = input<boolean | undefined>(false);\n readonly typeRadio = input<'normal' | 'medium' | undefined, 'normal' | 'medium' | undefined>('normal', { transform: value => value ?? 'normal' });\n readonly classInclude = input<string | undefined, string | undefined>('', { transform: value => value ?? '' });\n readonly classLabelInclude = input<string | undefined, string | undefined>('', { transform: value => value ?? '' });\n readonly classItemInclude = input<string | undefined, string | undefined>('py-[4px]', { transform: value => value ?? 'py-[4px]' });\n readonly alwaysShowSubText = input<boolean | undefined>();\n readonly horizontalClassInclude = input<string | undefined, string | undefined>('', { transform: value => value ?? '' });\n\n // #region OUTPUT\n readonly outClickButton = output<IButton>();\n readonly outChange = output<IRadioEvent>();\n readonly outFunctionsControl = output<IRadioGroupFunctionControlEvent>();\n\n constructor() {\n effect(() => {\n if (isNil(this.keyActive()) || !this.fieldKey()) {\n return;\n }\n untracked(() => {\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n group.item.active = false;\n if (group.item && group.item[this.fieldKey()] === this.keyActive()) {\n group.item.active = true;\n }\n return group;\n });\n });\n })\n });\n\n effect(() => {\n if (!Array.isArray(this.keysDisable()) || !this.fieldKey()) {\n return;\n }\n untracked(() => {\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n group.disableByKeys = false;\n if (group.item && this.keysDisable()?.includes(group.item[this.fieldKey()])) {\n group.disableByKeys = true;\n }\n return group;\n });\n });\n })\n });\n }\n\n ngOnInit() {\n this.outFunctionsControl.emit({\n checkIsValid: this.checkValid.bind(this),\n resetError: this.resetError.bind(this),\n reset: async () => {\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n group.item.active = false;\n return group;\n });\n });\n this.resetError();\n }\n });\n }\n\n // #region FUNCTIONS\n protected async handlerClickButton(event: IButton) {\n this.outClickButton.emit(event);\n }\n\n protected async handlerChange(dataEvent: { active: boolean; key: any }) {\n if (this.disable()) {\n return;\n }\n const event: any = dataEvent;\n\n this.groups.update(data => {\n return data.map<IRadioGroupItem>((group) => {\n const item = group.item;\n\n item.active = false;\n if (item[this.fieldKey()] === dataEvent.key) {\n item.active = dataEvent.active;\n event.item = item;\n }\n return group;\n });\n });\n this.outChange.emit(event);\n this.checkValid();\n }\n\n private async checkValid(): Promise<boolean> {\n this.isErrorRequired.set(false);\n if (!this.validRequired()) {\n return true;\n }\n\n this.isErrorRequired.set(!this.groups()?.some((group: IRadioGroupItem) => group.item?.active));\n\n return !this.isErrorRequired();\n }\n\n private async resetError() {\n this.isErrorRequired.set(false);\n }\n}\n","<div class=\"flex flex-col w-full\">\n @if (labelConfig();as labelConfig) {\n <libs_ui-components-label [classInclude]=\"labelConfig.classInclude\"\n [labelLeft]=\"labelConfig.labelLeft\"\n [labelLeftClass]=\"labelConfig.labelLeftClass\"\n [required]=\"labelConfig.required\"\n [description]=\"labelConfig.description\"\n [descriptionClass]=\"labelConfig.descriptionClass\"\n [labelRight]=\"labelConfig.labelRight\"\n [labelRightClass]=\"labelConfig.labelRightClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [buttonsLeft]=\"labelConfig.buttonsLeft\"\n [disableButtonsLeft]=\"labelConfig.disableButtonsLeft || disable()\"\n [hasToggle]=\"labelConfig.hasToggle\"\n [toggleActive]=\"labelConfig.toggleActive\"\n [toggleDisable]=\"labelConfig.toggleDisable || disable()\"\n [popover]=\"labelConfig.popover\"\n [iconPopoverClass]=\"labelConfig.iconPopoverClass\"\n [onlyShowCount]=\"labelConfig.onlyShowCount\"\n [limitLength]=\"labelConfig.limitLength\"\n [buttonsDescription]=\"labelConfig.buttonsDescription\"\n [disableButtonsDescription]=\"labelConfig.disableButtonsDescription || disable()\"\n [buttonsDescriptionContainerClass]=\"labelConfig.buttonsDescriptionContainerClass\"\n [count]=\"labelConfig.count\"\n (outClickButton)=\"handlerClickButton($event)\" />\n }\n @if (isErrorRequired()) {\n <div class=\"flex items-center mb-[4px]\">\n <i [class]=\"'libs-ui-icon-close libs-ui-text-error text-[6px] pr-[4px]'\"></i>\n <span class=\"libs-ui-font-h5r libs-ui-text-error\"\n [innerHtml]=\"(validRequired()?.message || ERROR_MESSAGE_EMPTY_VALID)| translate:validRequired()?.interpolateParams\">\n </span>\n </div>\n }\n <div class=\"libs-ui-radio-group\"\n [class.flex]=\"horizontal()\">\n @for (group of groups(); track group;let isLast = $last) {\n <div\n [class]=\"horizontal() ? ((isLast && ignoreClassMarginLastItem()) ? '' : (horizontalClassInclude() || 'mr-[24px]')) : ''\">\n <div [class]=\"classItemInclude()\">\n <libs_ui-components-radio-single [labelInterpolateParams]='group.item.labelInterpolateParams'\n [label]=\"group.item.label || ' '\"\n [active]=\"group.item.active || false\"\n [key]=\"group.item[fieldKey()]\"\n [disable]=\"group['disableByKeys'] || disable() || group.item.disable || false\"\n [disableLabel]=\" group.item.disableLabel || false\"\n [classLabelInclude]=\"classLabelInclude() || group.item.classLabelInclude || 'libs-ui-font-h5r'\"\n [classInclude]=\"classInclude() || group.item.classInclude || ''\"\n [zIndexLabel]=\"group.item.zIndexLabel\"\n [typeRadio]=\"typeRadio()\"\n [avatarConfig]=\"group.item.avatarConfig\"\n (outChange)=\"handlerChange($event)\"\n [popover]=\"group.item.popover\"\n [clickExactly]=\"clickExactly()\" />\n </div>\n @if (group.item.active || alwaysShowSubText()) {\n @if (group.subText) {\n <div\n [class]=\"'libs-ui-radio-group-sub-text libs-ui-font-h7r' + (group.classIncludeSubText ? group.classIncludeSubText:'')\"\n [innerHtml]=\"group.subText | translate\">\n </div>\n }\n <ng-container *ngTemplateOutlet=\"group?.subTemplate || null;context:{item:group.item}\" />\n }\n </div>\n }\n </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@libs-ui/components-radio-group",
3
- "version": "0.2.215",
3
+ "version": "0.2.217",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^18.2.0",
6
6
  "@angular/core": "^18.2.0",
7
- "@libs-ui/components-buttons-button": "^0.2.215",
8
- "@libs-ui/components-label": "^0.2.215",
9
- "@libs-ui/components-radio-single": "^0.2.215",
10
- "@libs-ui/utils": "^0.2.215",
7
+ "@libs-ui/components-buttons-button": "^0.2.217",
8
+ "@libs-ui/components-label": "^0.2.217",
9
+ "@libs-ui/components-radio-single": "^0.2.217",
10
+ "@libs-ui/utils": "^0.2.217",
11
11
  "@ngx-translate/core": "^15.0.0",
12
- "@libs-ui/interfaces-types": "^0.2.215"
12
+ "@libs-ui/interfaces-types": "^0.2.217"
13
13
  },
14
14
  "sideEffects": false,
15
15
  "module": "fesm2022/libs-ui-components-radio-group.mjs",