@libs-ui/components-radio-single 0.2.208 → 0.2.210

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.
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { ChangeDetectionStrategy, Component, effect, input, model, output, signal, untracked, viewChild } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, computed, effect, input, model, output, signal, untracked, viewChild } from '@angular/core';
3
3
  import { LibsUiComponentsAvatarComponent } from '@libs-ui/components-avatar';
4
4
  import { LibsUiComponentsPopoverComponent } from '@libs-ui/components-popover';
5
5
  import { TranslateModule } from '@ngx-translate/core';
@@ -11,6 +11,15 @@ import * as i1 from "@ngx-translate/core";
11
11
  export class LibsUiComponentsRadioSingleComponent {
12
12
  // #region PROPERTY
13
13
  linkImageDisplay = signal('');
14
+ dataComponentOutletComputed = computed(() => {
15
+ if (!this.componentOutlet()) {
16
+ return undefined;
17
+ }
18
+ return {
19
+ component: this.componentOutlet(),
20
+ inputs: this.dataComponentOutlet() || {}
21
+ };
22
+ });
14
23
  onDestroy = new Subject();
15
24
  // #region INPUT
16
25
  key = input();
@@ -84,7 +93,7 @@ export class LibsUiComponentsRadioSingleComponent {
84
93
  this.onDestroy.complete();
85
94
  }
86
95
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioSingleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
87
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioSingleComponent, isStandalone: true, selector: "libs_ui-components-radio-single", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelInterpolateParams: { classPropertyName: "labelInterpolateParams", publicName: "labelInterpolateParams", isSignal: true, isRequired: false, transformFunction: null }, ignorePopoverLabel: { classPropertyName: "ignorePopoverLabel", publicName: "ignorePopoverLabel", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, linkImage: { classPropertyName: "linkImage", publicName: "linkImage", isSignal: true, isRequired: false, transformFunction: null }, linkImageError: { classPropertyName: "linkImageError", publicName: "linkImageError", isSignal: true, isRequired: false, transformFunction: null }, avatarConfig: { classPropertyName: "avatarConfig", publicName: "avatarConfig", isSignal: true, isRequired: false, transformFunction: null }, classImageInclude: { classPropertyName: "classImageInclude", publicName: "classImageInclude", isSignal: true, isRequired: false, transformFunction: null }, imgTypeIcon: { classPropertyName: "imgTypeIcon", publicName: "imgTypeIcon", isSignal: true, isRequired: false, transformFunction: null }, bullet: { classPropertyName: "bullet", publicName: "bullet", isSignal: true, isRequired: false, transformFunction: null }, popover: { classPropertyName: "popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, disableLabel: { classPropertyName: "disableLabel", publicName: "disableLabel", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, ignoreRadio: { classPropertyName: "ignoreRadio", publicName: "ignoreRadio", isSignal: true, isRequired: false, transformFunction: null }, zIndexLabel: { classPropertyName: "zIndexLabel", publicName: "zIndexLabel", isSignal: true, isRequired: false, transformFunction: null }, classIncludeIcon: { classPropertyName: "classIncludeIcon", publicName: "classIncludeIcon", isSignal: true, isRequired: false, transformFunction: null }, dataComponentOutlet: { classPropertyName: "dataComponentOutlet", publicName: "dataComponentOutlet", isSignal: true, isRequired: false, transformFunction: null }, componentOutlet: { classPropertyName: "componentOutlet", publicName: "componentOutlet", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", outClickLabel: "outClickLabel", outChange: "outChange", outChangStageFlagMousePopover: "outChangStageFlagMousePopover" }, viewQueries: [{ propertyName: "imageEl", first: true, predicate: ["imageEl"], descendants: true, isSignal: true }], ngImport: i0, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (componentOutlet() && dataComponentOutlet()) {\n <ng-container *ngComponentOutlet=\"componentOutlet(); inputs:{item:dataComponentOutlet()}\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "component", type: LibsUiComponentsAvatarComponent, selector: "libs_ui-components-avatar", inputs: ["getLastTextAfterSpace", "typeShape", "classInclude", "size", "linkAvatar", "linkAvatarError", "idGenColor", "textAvatar", "classImageInclude"], outputs: ["outAvatarError"] }, { kind: "component", type: LibsUiComponentsPopoverComponent, selector: "libs_ui-components-popover,[LibsUiComponentsPopoverDirective]", inputs: ["debugId", "flagMouse", "type", "mode", "config", "ignoreShowPopover", "elementRefCustom", "classInclude", "ignoreHiddenPopoverContentWhenMouseLeave", "ignoreStopPropagationEvent", "ignoreCursorPointerModeLikeClick", "isAddContentToParentDocument", "ignoreClickOutside"], outputs: ["outEvent", "outChangStageFlagMouse", "outEventPopoverContent", "outFunctionsControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
96
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioSingleComponent, isStandalone: true, selector: "libs_ui-components-radio-single", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelInterpolateParams: { classPropertyName: "labelInterpolateParams", publicName: "labelInterpolateParams", isSignal: true, isRequired: false, transformFunction: null }, ignorePopoverLabel: { classPropertyName: "ignorePopoverLabel", publicName: "ignorePopoverLabel", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, linkImage: { classPropertyName: "linkImage", publicName: "linkImage", isSignal: true, isRequired: false, transformFunction: null }, linkImageError: { classPropertyName: "linkImageError", publicName: "linkImageError", isSignal: true, isRequired: false, transformFunction: null }, avatarConfig: { classPropertyName: "avatarConfig", publicName: "avatarConfig", isSignal: true, isRequired: false, transformFunction: null }, classImageInclude: { classPropertyName: "classImageInclude", publicName: "classImageInclude", isSignal: true, isRequired: false, transformFunction: null }, imgTypeIcon: { classPropertyName: "imgTypeIcon", publicName: "imgTypeIcon", isSignal: true, isRequired: false, transformFunction: null }, bullet: { classPropertyName: "bullet", publicName: "bullet", isSignal: true, isRequired: false, transformFunction: null }, popover: { classPropertyName: "popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, disableLabel: { classPropertyName: "disableLabel", publicName: "disableLabel", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, ignoreRadio: { classPropertyName: "ignoreRadio", publicName: "ignoreRadio", isSignal: true, isRequired: false, transformFunction: null }, zIndexLabel: { classPropertyName: "zIndexLabel", publicName: "zIndexLabel", isSignal: true, isRequired: false, transformFunction: null }, classIncludeIcon: { classPropertyName: "classIncludeIcon", publicName: "classIncludeIcon", isSignal: true, isRequired: false, transformFunction: null }, dataComponentOutlet: { classPropertyName: "dataComponentOutlet", publicName: "dataComponentOutlet", isSignal: true, isRequired: false, transformFunction: null }, componentOutlet: { classPropertyName: "componentOutlet", publicName: "componentOutlet", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", outClickLabel: "outClickLabel", outChange: "outChange", outChangStageFlagMousePopover: "outChangStageFlagMousePopover" }, viewQueries: [{ propertyName: "imageEl", first: true, predicate: ["imageEl"], descendants: true, isSignal: true }], ngImport: i0, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (dataComponentOutletComputed(); as dataComponentOutletComputed) {\n <ng-container\n *ngComponentOutlet=\"dataComponentOutletComputed.component; inputs:dataComponentOutletComputed.inputs\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "component", type: LibsUiComponentsAvatarComponent, selector: "libs_ui-components-avatar", inputs: ["getLastTextAfterSpace", "typeShape", "classInclude", "size", "linkAvatar", "linkAvatarError", "idGenColor", "textAvatar", "classImageInclude"], outputs: ["outAvatarError"] }, { kind: "component", type: LibsUiComponentsPopoverComponent, selector: "libs_ui-components-popover,[LibsUiComponentsPopoverDirective]", inputs: ["debugId", "flagMouse", "type", "mode", "config", "ignoreShowPopover", "elementRefCustom", "classInclude", "ignoreHiddenPopoverContentWhenMouseLeave", "ignoreStopPropagationEvent", "ignoreCursorPointerModeLikeClick", "isAddContentToParentDocument", "ignoreClickOutside"], outputs: ["outEvent", "outChangStageFlagMouse", "outEventPopoverContent", "outFunctionsControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
88
97
  }
89
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioSingleComponent, decorators: [{
90
99
  type: Component,
@@ -92,6 +101,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
92
101
  TranslateModule, NgComponentOutlet,
93
102
  LibsUiComponentsAvatarComponent,
94
103
  LibsUiComponentsPopoverComponent
95
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (componentOutlet() && dataComponentOutlet()) {\n <ng-container *ngComponentOutlet=\"componentOutlet(); inputs:{item:dataComponentOutlet()}\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"] }]
104
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (dataComponentOutletComputed(); as dataComponentOutletComputed) {\n <ng-container\n *ngComponentOutlet=\"dataComponentOutletComputed.component; inputs:dataComponentOutletComputed.inputs\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"] }]
96
105
  }], ctorParameters: () => [] });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL3JhZGlvL3NpbmdsZS9zcmMvcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL3JhZGlvL3NpbmdsZS9zcmMvcmFkaW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUF5QixNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckssT0FBTyxFQUFpQiwrQkFBK0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVGLE9BQU8sRUFBd0IsZ0NBQWdDLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBZ0JwRCxNQUFNLE9BQU8sb0NBQW9DO0lBQy9DLG1CQUFtQjtJQUNULGdCQUFnQixHQUFHLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUV4QyxTQUFTLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUV4QyxnQkFBZ0I7SUFDUCxHQUFHLEdBQUcsS0FBSyxFQUFXLENBQUM7SUFDdkIsTUFBTSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUMvQixZQUFZLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FB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QUFFLGlCQUFpQixvUEFDbEMsK0JBQStCLDZQQUMvQixnQ0FBZ0M7OzRGQUt2QixvQ0FBb0M7a0JBZGhELFNBQVM7K0JBRUUsaUNBQWlDLGNBRy9CLElBQUksV0FDUDt3QkFDUCxlQUFlLEVBQUUsaUJBQWlCO3dCQUNsQywrQkFBK0I7d0JBQy9CLGdDQUFnQztxQkFDakMsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIGVmZmVjdCwgaW5wdXQsIG1vZGVsLCBvdXRwdXQsIHNpZ25hbCwgdW50cmFja2VkLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElBdmF0YXJDb25maWcsIExpYnNVaUNvbXBvbmVudHNBdmF0YXJDb21wb25lbnQgfSBmcm9tICdAbGlicy11aS9jb21wb25lbnRzLWF2YXRhcic7XG5pbXBvcnQgeyBJRmxhZ01vdXNlLCBJUG9wb3ZlciwgTGlic1VpQ29tcG9uZW50c1BvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAbGlicy11aS9jb21wb25lbnRzLXBvcG92ZXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IElSYWRpb0V2ZW50IH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IExpYnNVaUNvbXBvbmVudHNDb21wb25uZW50T3V0bGV0Q29tcG9uZW50LCBUWVBFX0NPTVBPTkVOVF9PVVRMRVRfREFUQSB9IGZyb20gJ0BsaWJzLXVpL2NvbXBvbmVudHMtY29tcG9uZW50LW91dGxldCc7XG5pbXBvcnQgeyBOZ0NvbXBvbmVudE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ2xpYnNfdWktY29tcG9uZW50cy1yYWRpby1zaW5nbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yYWRpby5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgVHJhbnNsYXRlTW9kdWxlLCBOZ0NvbXBvbmVudE91dGxldCxcbiAgICBMaWJzVWlDb21wb25lbnRzQXZhdGFyQ29tcG9uZW50LFxuICAgIExpYnNVaUNvbXBvbmVudHNQb3BvdmVyQ29tcG9uZW50XG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuXG5leHBvcnQgY2xhc3MgTGlic1VpQ29tcG9uZW50c1JhZGlvU2luZ2xlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgLy8gI3JlZ2lvbiBQUk9QRVJUWVxuICBwcm90ZWN0ZWQgbGlua0ltYWdlRGlzcGxheSA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcblxuICBwcml2YXRlIG9uRGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLy8gI3JlZ2lvbiBJTlBVVFxuICByZWFkb25seSBrZXkgPSBpbnB1dDx1bmtub3duPigpO1xuICByZWFkb25seSBhY3RpdmUgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IGNsYXNzSW5jbHVkZSA9IGlucHV0PHN0cmluZz4oJycpO1xuICByZWFkb25seSBsYWJlbCA9IGlucHV0PHN0cmluZz4oJycpO1xuICByZWFkb25seSBsYWJlbEludGVycG9sYXRlUGFyYW1zID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCB1bmRlZmluZWQsIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkPih7fSwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlIHx8IHt9IH0pO1xuICByZWFkb25seSBpZ25vcmVQb3BvdmVyTGFiZWwgPSBpbnB1dDxib29sZWFuPigpO1xuICByZWFkb25seSBjbGFzc0xhYmVsSW5jbHVkZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZCwgc3RyaW5nIHwgdW5kZWZpbmVkPignbGlicy11aS1mb250LWg0ciAnLCB7IHRyYW5zZm9ybTogKHZhbHVlKSA9PiB2YWx1ZSB8fCAnJyB9KTtcbiAgcmVhZG9ubHkgbGlua0ltYWdlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGxpbmtJbWFnZUVycm9yID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGF2YXRhckNvbmZpZyA9IGlucHV0PElBdmF0YXJDb25maWc+KCk7XG4gIHJlYWRvbmx5IGNsYXNzSW1hZ2VJbmNsdWRlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGltZ1R5cGVJY29uID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgYnVsbGV0ID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4oKTtcbiAgcmVhZG9ubHkgcG9wb3ZlciA9IGlucHV0PElQb3BvdmVyPigpO1xuICByZWFkb25seSBkaXNhYmxlID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgZGlzYWJsZUxhYmVsID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgY2xpY2tFeGFjdGx5ID0gaW5wdXQ8Ym9vbGVhbiB8IHVuZGVmaW5lZCwgYm9vbGVhbiB8IHVuZGVmaW5lZD4odHJ1ZSwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/IHRydWUgfSk7XG4gIHJlYWRvbmx5IHR5cGVSYWRpbyA9IGlucHV0PCdub3JtYWwnIHwgJ21lZGl1bScgfCB1bmRlZmluZWQsICdub3JtYWwnIHwgJ21lZGl1bScgfCB1bmRlZmluZWQ+KCdub3JtYWwnLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgfHwgJ25vcm1hbCcgfSk7XG4gIHJlYWRvbmx5IGlnbm9yZVJhZGlvID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgekluZGV4TGFiZWwgPSBpbnB1dDxudW1iZXIgfCB1bmRlZmluZWQsIG51bWJlciB8IHVuZGVmaW5lZD4oMTIwMCwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/IDEyMDAgfSk7XG4gIHJlYWRvbmx5IGNsYXNzSW5jbHVkZUljb24gPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQsIHN0cmluZyB8IHVuZGVmaW5lZD4oJycsIHsgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlIHx8ICcnIH0pO1xuXG4gIHJlYWRvbmx5IGRhdGFDb21wb25lbnRPdXRsZXQgPSBpbnB1dDxUWVBFX0NPTVBPTkVOVF9PVVRMRVRfREFUQT4oKTtcbiAgcmVhZG9ubHkgY29tcG9uZW50T3V0bGV0ID0gaW5wdXQ8TGlic1VpQ29tcG9uZW50c0NvbXBvbm5lbnRPdXRsZXRDb21wb25lbnQgfCBhbnk+KCk7XG5cbiAgLy8gI3JlZ2lvbiBPVVRQVVRcbiAgcmVhZG9ubHkgb3V0Q2xpY2tMYWJlbCA9IG91dHB1dDx2b2lkPigpO1xuICByZWFkb25seSBvdXRDaGFuZ2UgPSBvdXRwdXQ8SVJhZGlvRXZlbnQ+KCk7XG4gIHJlYWRvbmx5IG91dENoYW5nU3RhZ2VGbGFnTW91c2VQb3BvdmVyID0gb3V0cHV0PElGbGFnTW91c2U+KCk7XG5cbiAgLyogVklFVyBDSElMRCAqL1xuICBwcml2YXRlIGltYWdlRWwgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZj4oJ2ltYWdlRWwnKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgdGhpcy5saW5rSW1hZ2UoKTtcbiAgICAgIHVudHJhY2tlZCgoKSA9PiB0aGlzLmxpbmtJbWFnZURpc3BsYXkuc2V0KHRoaXMubGlua0ltYWdlKCkpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5pbWFnZUVsKCkpIHtcbiAgICAgIGZyb21FdmVudCh0aGlzLmltYWdlRWwoKT8ubmF0aXZlRWxlbWVudCwgJ2Vycm9yJykucGlwZSh0YWtlKDEpLCB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmxpbmtJbWFnZURpc3BsYXkuc2V0KHRoaXMubGlua0ltYWdlRXJyb3IoKSlcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qIEZVTkNUSU9OUyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlckNsaWNrKGU6IEV2ZW50KSB7XG4gICAgaWYgKHRoaXMuY2xpY2tFeGFjdGx5KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmNoYW5nZUFjdGl2ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZXJFdmVudExhYmVsKHR5cGU6IHN0cmluZykge1xuICAgIGlmICh0eXBlID09PSAnY2xpY2snKSB7XG4gICAgICB0aGlzLm91dENsaWNrTGFiZWwuZW1pdCgpO1xuICAgICAgdGhpcy5jaGFuZ2VBY3RpdmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNoYW5nZUFjdGl2ZSgpIHtcbiAgICBpZiAodGhpcy5hY3RpdmUoKSB8fCB0aGlzLmRpc2FibGUoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZS51cGRhdGUodmFsdWUgPT4gIXZhbHVlKTtcbiAgICB0aGlzLm91dENoYW5nZS5lbWl0KHsgYWN0aXZlOiB0aGlzLmFjdGl2ZSgpLCBrZXk6IHRoaXMua2V5KCkgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlckNoYW5nU3RhZ2VGbGFnTW91c2UoZmxhZzogSUZsYWdNb3VzZSkge1xuICAgIHRoaXMub3V0Q2hhbmdTdGFnZUZsYWdNb3VzZVBvcG92ZXIuZW1pdChmbGFnKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25EZXN0cm95Lm5leHQoKTtcbiAgICB0aGlzLm9uRGVzdHJveS5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8ZGl2IFtjbGFzc109XCInbGlicy11aS1yYWRpbyAnICsgY2xhc3NJbmNsdWRlKClcIlxuICBbY2xhc3MuY3Vyc29yLXBvaW50ZXJdPVwiIWNsaWNrRXhhY3RseSgpXCJcbiAgKGNsaWNrKT1cImhhbmRsZXJDbGljaygkZXZlbnQpXCI+XG4gIEBpZiAoIWlnbm9yZVJhZGlvKCkpIHtcbiAgICA8ZGl2IFtjbGFzcy5saWJzLXVpLWljb24tcmFkaW8tdW5zZWxlY3RlZF09XCIhYWN0aXZlKClcIlxuICAgICAgW2NsYXNzLnRleHQtWyM2YTczODNdXT1cIiFhY3RpdmUoKVwiXG4gICAgICBbY2xhc3MubGlicy11aS1pY29uLXJhZGlvLXNlbGVjdGVkXT1cIihhY3RpdmUoKSlcIlxuICAgICAgW2NsYXNzLmxpYnMtdWktZGlzYWJsZV09XCJkaXNhYmxlKClcIlxuICAgICAgW2NsYXNzLmxpYnMtdWktZGlzYWJsZS1hY3RpdmVdPVwiZGlzYWJsZSgpICYmIGFjdGl2ZSgpXCJcbiAgICAgIFtjbGFzcy5wb2ludGVyLWV2ZW50cy1ub25lXT1cImRpc2FibGUoKVwiXG4gICAgICBbY2xhc3NdPVwiY2xhc3NJbmNsdWRlSWNvbigpICsgJyBsaWJzLXVpLXJhZGlvLXR5cGUtJyArIHR5cGVSYWRpbygpXCJcbiAgICAgIChjbGljayk9XCJoYW5kbGVyRXZlbnRMYWJlbCgnY2xpY2snKVwiPlxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAobGlua0ltYWdlRGlzcGxheSgpKSB7XG4gICAgPGltZyAjaW1hZ2VFbFxuICAgICAgW3NyY109XCJsaW5rSW1hZ2VEaXNwbGF5KClcIlxuICAgICAgW2NsYXNzXT1cIidsaWJzLXVpLXJhZGlvLWltYWdlICcgKyBjbGFzc0ltYWdlSW5jbHVkZSgpXCJcbiAgICAgIFtjbGFzcy5jdXJzb3ItZGVmYXVsdF09XCJkaXNhYmxlKClcIlxuICAgICAgW2NsYXNzLnctWzE4cHhdXT1cImltZ1R5cGVJY29uKClcIlxuICAgICAgW2NsYXNzLmgtWzE4cHhdXT1cImltZ1R5cGVJY29uKClcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZXJFdmVudExhYmVsKCdjbGljaycpXCIgLz5cbiAgfVxuICBAaWYgKGF2YXRhckNvbmZpZygpOyBhcyBhdmF0YXJDb25maWcpIHtcbiAgICA8bGlic191aS1jb21wb25lbnRzLWF2YXRhciBbdHlwZVNoYXBlXT1cImF2YXRhckNvbmZpZy50eXBlU2hhcGUgfHwnY2lyY2xlJ1wiXG4gICAgICBbY2xhc3NJbmNsdWRlXT1cImF2YXRhckNvbmZpZy5jbGFzc0luY2x1ZGVcIlxuICAgICAgW3NpemVdPSdhdmF0YXJDb25maWcuc2l6ZSB8fCAyNCdcbiAgICAgIFtsaW5rQXZhdGFyXT1cImF2YXRhckNvbmZpZy5saW5rQXZhdGFyXCJcbiAgICAgIFtsaW5rQXZhdGFyRXJyb3JdPVwiYXZhdGFyQ29uZmlnLmxpbmtBdmF0YXJFcnJvclwiXG4gICAgICBbaWRHZW5Db2xvcl09XCJhdmF0YXJDb25maWcuaWRHZW5Db2xvclwiXG4gICAgICBbdGV4dEF2YXRhcl09XCJhdmF0YXJDb25maWcudGV4dEF2YXRhclwiIC8+XG4gIH1cbiAgQGlmIChidWxsZXQoKTsgYXMgYnVsbGV0Q29uZmlnKSB7XG4gICAgPGRpdiBjbGFzcz1cImxpYnMtdWktcmFkaW8tYnVsbGV0XCJcbiAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImJ1bGxldENvbmZpZ1snYmFja2dyb3VuZENvbG9yJ11cIlxuICAgICAgW2NsYXNzLmN1cnNvci1kZWZhdWx0XT1cImRpc2FibGUoKVwiXG4gICAgICAoY2xpY2spPVwiaGFuZGxlckV2ZW50TGFiZWwoJ2NsaWNrJylcIj5cbiAgICA8L2Rpdj5cbiAgfVxuICBAaWYgKGxhYmVsKCkpIHtcbiAgICA8bGlic191aS1jb21wb25lbnRzLXBvcG92ZXIgdHlwZT1cInRleHRcIlxuICAgICAgW2F0dHIuaXNMYWJlbF09XCJ0cnVlXCJcbiAgICAgIFtjbGFzc0luY2x1ZGVdPVwiY2xhc3NMYWJlbEluY2x1ZGUoKSArIChkaXNhYmxlKCkgPyAnIGN1cnNvci1kZWZhdWx0JzonIGN1cnNvci1wb2ludGVyJylcIlxuICAgICAgW2lnbm9yZUN1cnNvclBvaW50ZXJNb2RlTGlrZUNsaWNrXT1cImRpc2FibGUoKVwiXG4gICAgICBbY2xhc3MubGlicy11aS1kaXNhYmxlXT1cImRpc2FibGVMYWJlbCgpXCJcbiAgICAgIFtpZ25vcmVTaG93UG9wb3Zlcl09XCJpZ25vcmVQb3BvdmVyTGFiZWwoKVwiXG4gICAgICBbY29uZmlnXT1cIntjb250ZW50OmxhYmVsKCksdGltZXJEZXN0cm95OjUwLCB6SW5kZXg6IHpJbmRleExhYmVsKCl9XCJcbiAgICAgIFtpbm5lckhUTUxdPVwibGFiZWwoKSB8IHRyYW5zbGF0ZTpsYWJlbEludGVycG9sYXRlUGFyYW1zKClcIlxuICAgICAgKG91dENoYW5nU3RhZ2VGbGFnTW91c2UpPSdoYW5kbGVyQ2hhbmdTdGFnZUZsYWdNb3VzZSgkZXZlbnQpJ1xuICAgICAgKG91dEV2ZW50KT1cImhhbmRsZXJFdmVudExhYmVsKCRldmVudClcIiAvPlxuICB9XG4gIEBpZiAocG9wb3ZlcigpOyBhcyBwb3BvdmVyKSB7XG4gICAgQGlmICghcG9wb3Zlci5kYXRhVmlldykge1xuICAgICAgPGkgTGlic1VpQ29tcG9uZW50c1BvcG92ZXJEaXJlY3RpdmVcbiAgICAgICAgW2NvbmZpZ109XCJwb3BvdmVyLmNvbmZpZ1wiXG4gICAgICAgIFtjbGFzc109XCIocG9wb3Zlci5jbGFzc0luY2x1ZGUgPz8gJ2xpYnMtdWktaWNvbi10b29sdGlwLW91dGxpbmUnKVwiXG4gICAgICAgIChvdXRDaGFuZ1N0YWdlRmxhZ01vdXNlKT0naGFuZGxlckNoYW5nU3RhZ2VGbGFnTW91c2UoJGV2ZW50KSc+XG4gICAgICA8L2k+XG4gICAgfVxuICAgIEBpZiAocG9wb3Zlci5kYXRhVmlldykge1xuICAgICAgPGRpdiBMaWJzVWlDb21wb25lbnRzUG9wb3ZlckRpcmVjdGl2ZVxuICAgICAgICBbY29uZmlnXT1cInBvcG92ZXIuY29uZmlnXCJcbiAgICAgICAgW2lubmVySHRtbF09XCIocG9wb3Zlci5kYXRhVmlldyB8fCAnICcpIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgKG91dENoYW5nU3RhZ2VGbGFnTW91c2UpPSdoYW5kbGVyQ2hhbmdTdGFnZUZsYWdNb3VzZSgkZXZlbnQpJz5cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgfVxuICBAaWYgKGNvbXBvbmVudE91dGxldCgpICYmIGRhdGFDb21wb25lbnRPdXRsZXQoKSkge1xuICAgIDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiY29tcG9uZW50T3V0bGV0KCk7IGlucHV0czp7aXRlbTpkYXRhQ29tcG9uZW50T3V0bGV0KCl9XCIgLz5cbiAgfVxuPC9kaXY+XG4iXX0=
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL3JhZGlvL3NpbmdsZS9zcmMvcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL3JhZGlvL3NpbmdsZS9zcmMvcmFkaW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUF5QixRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9LLE9BQU8sRUFBaUIsK0JBQStCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RixPQUFPLEVBQXdCLGdDQUFnQyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQWdCcEQsTUFBTSxPQUFPLG9DQUFvQztJQUMvQyxtQkFBbUI7SUFDVCxnQkFBZ0IsR0FBRyxNQUFNLENBQVMsRUFBRSxDQUFDLENBQUM7SUFDdEMsMkJBQTJCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7WUFDNUIsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE9BQU87WUFDTCxTQUFTLEVBQUUsSUFB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Q0FBQywwQkFBMEIsQ0FBQyxJQUFnQjtRQUN6RCxJQUFJLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7d0dBOUZVLG9DQUFvQzs0RkFBcEMsb0NBQW9DLG9oSEN6QmpELDAvRkF3RUEsMjdCRHRESSxlQUFlLDRGQUFFLGlCQUFpQixvUEFDbEMsK0JBQStCLDZQQUMvQixnQ0FBZ0M7OzRGQUt2QixvQ0FBb0M7a0JBZGhELFNBQVM7K0JBRUUsaUNBQWlDLGNBRy9CLElBQUksV0FDUDt3QkFDUCxlQUFlLEVBQUUsaUJBQWlCO3dCQUNsQywrQkFBK0I7d0JBQy9CLGdDQUFnQztxQkFDakMsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIGNvbXB1dGVkLCBlZmZlY3QsIGlucHV0LCBtb2RlbCwgb3V0cHV0LCBzaWduYWwsIHVudHJhY2tlZCwgdmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJQXZhdGFyQ29uZmlnLCBMaWJzVWlDb21wb25lbnRzQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1hdmF0YXInO1xuaW1wb3J0IHsgSUZsYWdNb3VzZSwgSVBvcG92ZXIsIExpYnNVaUNvbXBvbmVudHNQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnQGxpYnMtdWkvY29tcG9uZW50cy1wb3BvdmVyJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBJUmFkaW9FdmVudCB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBMaWJzVWlDb21wb25lbnRzQ29tcG9ubmVudE91dGxldENvbXBvbmVudCwgVFlQRV9DT01QT05FTlRfT1VUTEVUX0RBVEEgfSBmcm9tICdAbGlicy11aS9jb21wb25lbnRzLWNvbXBvbmVudC1vdXRsZXQnO1xuaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdsaWJzX3VpLWNvbXBvbmVudHMtcmFkaW8tc2luZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmFkaW8uY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFRyYW5zbGF0ZU1vZHVsZSwgTmdDb21wb25lbnRPdXRsZXQsXG4gICAgTGlic1VpQ29tcG9uZW50c0F2YXRhckNvbXBvbmVudCxcbiAgICBMaWJzVWlDb21wb25lbnRzUG9wb3ZlckNvbXBvbmVudFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcblxuZXhwb3J0IGNsYXNzIExpYnNVaUNvbXBvbmVudHNSYWRpb1NpbmdsZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIC8vICNyZWdpb24gUFJPUEVSVFlcbiAgcHJvdGVjdGVkIGxpbmtJbWFnZURpc3BsYXkgPSBzaWduYWw8c3RyaW5nPignJyk7XG4gIHByb3RlY3RlZCBkYXRhQ29tcG9uZW50T3V0bGV0Q29tcHV0ZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgaWYgKCF0aGlzLmNvbXBvbmVudE91dGxldCgpKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgY29tcG9uZW50OiB0aGlzLmNvbXBvbmVudE91dGxldCgpLFxuICAgICAgaW5wdXRzOiB0aGlzLmRhdGFDb21wb25lbnRPdXRsZXQoKSB8fCB7fVxuICAgIH07XG4gIH0pO1xuICBwcml2YXRlIG9uRGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLy8gI3JlZ2lvbiBJTlBVVFxuICByZWFkb25seSBrZXkgPSBpbnB1dDx1bmtub3duPigpO1xuICByZWFkb25seSBhY3RpdmUgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IGNsYXNzSW5jbHVkZSA9IGlucHV0PHN0cmluZz4oJycpO1xuICByZWFkb25seSBsYWJlbCA9IGlucHV0PHN0cmluZz4oJycpO1xuICByZWFkb25seSBsYWJlbEludGVycG9sYXRlUGFyYW1zID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCB1bmRlZmluZWQsIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkPih7fSwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlIHx8IHt9IH0pO1xuICByZWFkb25seSBpZ25vcmVQb3BvdmVyTGFiZWwgPSBpbnB1dDxib29sZWFuPigpO1xuICByZWFkb25seSBjbGFzc0xhYmVsSW5jbHVkZSA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZCwgc3RyaW5nIHwgdW5kZWZpbmVkPignbGlicy11aS1mb250LWg0ciAnLCB7IHRyYW5zZm9ybTogKHZhbHVlKSA9PiB2YWx1ZSB8fCAnJyB9KTtcbiAgcmVhZG9ubHkgbGlua0ltYWdlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGxpbmtJbWFnZUVycm9yID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGF2YXRhckNvbmZpZyA9IGlucHV0PElBdmF0YXJDb25maWc+KCk7XG4gIHJlYWRvbmx5IGNsYXNzSW1hZ2VJbmNsdWRlID0gaW5wdXQ8c3RyaW5nPignJyk7XG4gIHJlYWRvbmx5IGltZ1R5cGVJY29uID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgYnVsbGV0ID0gaW5wdXQ8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4oKTtcbiAgcmVhZG9ubHkgcG9wb3ZlciA9IGlucHV0PElQb3BvdmVyPigpO1xuICByZWFkb25seSBkaXNhYmxlID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgZGlzYWJsZUxhYmVsID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgY2xpY2tFeGFjdGx5ID0gaW5wdXQ8Ym9vbGVhbiB8IHVuZGVmaW5lZCwgYm9vbGVhbiB8IHVuZGVmaW5lZD4odHJ1ZSwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/IHRydWUgfSk7XG4gIHJlYWRvbmx5IHR5cGVSYWRpbyA9IGlucHV0PCdub3JtYWwnIHwgJ21lZGl1bScgfCB1bmRlZmluZWQsICdub3JtYWwnIHwgJ21lZGl1bScgfCB1bmRlZmluZWQ+KCdub3JtYWwnLCB7IHRyYW5zZm9ybTogdmFsdWUgPT4gdmFsdWUgfHwgJ25vcm1hbCcgfSk7XG4gIHJlYWRvbmx5IGlnbm9yZVJhZGlvID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgekluZGV4TGFiZWwgPSBpbnB1dDxudW1iZXIgfCB1bmRlZmluZWQsIG51bWJlciB8IHVuZGVmaW5lZD4oMTIwMCwgeyB0cmFuc2Zvcm06IHZhbHVlID0+IHZhbHVlID8/IDEyMDAgfSk7XG4gIHJlYWRvbmx5IGNsYXNzSW5jbHVkZUljb24gPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQsIHN0cmluZyB8IHVuZGVmaW5lZD4oJycsIHsgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlIHx8ICcnIH0pO1xuXG4gIHJlYWRvbmx5IGRhdGFDb21wb25lbnRPdXRsZXQgPSBpbnB1dDxUWVBFX0NPTVBPTkVOVF9PVVRMRVRfREFUQT4oKTtcbiAgcmVhZG9ubHkgY29tcG9uZW50T3V0bGV0ID0gaW5wdXQ8TGlic1VpQ29tcG9uZW50c0NvbXBvbm5lbnRPdXRsZXRDb21wb25lbnQgfCBhbnk+KCk7XG5cbiAgLy8gI3JlZ2lvbiBPVVRQVVRcbiAgcmVhZG9ubHkgb3V0Q2xpY2tMYWJlbCA9IG91dHB1dDx2b2lkPigpO1xuICByZWFkb25seSBvdXRDaGFuZ2UgPSBvdXRwdXQ8SVJhZGlvRXZlbnQ+KCk7XG4gIHJlYWRvbmx5IG91dENoYW5nU3RhZ2VGbGFnTW91c2VQb3BvdmVyID0gb3V0cHV0PElGbGFnTW91c2U+KCk7XG5cbiAgLyogVklFVyBDSElMRCAqL1xuICBwcml2YXRlIGltYWdlRWwgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZj4oJ2ltYWdlRWwnKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgdGhpcy5saW5rSW1hZ2UoKTtcbiAgICAgIHVudHJhY2tlZCgoKSA9PiB0aGlzLmxpbmtJbWFnZURpc3BsYXkuc2V0KHRoaXMubGlua0ltYWdlKCkpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5pbWFnZUVsKCkpIHtcbiAgICAgIGZyb21FdmVudCh0aGlzLmltYWdlRWwoKT8ubmF0aXZlRWxlbWVudCwgJ2Vycm9yJykucGlwZSh0YWtlKDEpLCB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmxpbmtJbWFnZURpc3BsYXkuc2V0KHRoaXMubGlua0ltYWdlRXJyb3IoKSlcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qIEZVTkNUSU9OUyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlckNsaWNrKGU6IEV2ZW50KSB7XG4gICAgaWYgKHRoaXMuY2xpY2tFeGFjdGx5KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmNoYW5nZUFjdGl2ZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZXJFdmVudExhYmVsKHR5cGU6IHN0cmluZykge1xuICAgIGlmICh0eXBlID09PSAnY2xpY2snKSB7XG4gICAgICB0aGlzLm91dENsaWNrTGFiZWwuZW1pdCgpO1xuICAgICAgdGhpcy5jaGFuZ2VBY3RpdmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGNoYW5nZUFjdGl2ZSgpIHtcbiAgICBpZiAodGhpcy5hY3RpdmUoKSB8fCB0aGlzLmRpc2FibGUoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZS51cGRhdGUodmFsdWUgPT4gIXZhbHVlKTtcbiAgICB0aGlzLm91dENoYW5nZS5lbWl0KHsgYWN0aXZlOiB0aGlzLmFjdGl2ZSgpLCBrZXk6IHRoaXMua2V5KCkgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgaGFuZGxlckNoYW5nU3RhZ2VGbGFnTW91c2UoZmxhZzogSUZsYWdNb3VzZSkge1xuICAgIHRoaXMub3V0Q2hhbmdTdGFnZUZsYWdNb3VzZVBvcG92ZXIuZW1pdChmbGFnKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMub25EZXN0cm95Lm5leHQoKTtcbiAgICB0aGlzLm9uRGVzdHJveS5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8ZGl2IFtjbGFzc109XCInbGlicy11aS1yYWRpbyAnICsgY2xhc3NJbmNsdWRlKClcIlxuICBbY2xhc3MuY3Vyc29yLXBvaW50ZXJdPVwiIWNsaWNrRXhhY3RseSgpXCJcbiAgKGNsaWNrKT1cImhhbmRsZXJDbGljaygkZXZlbnQpXCI+XG4gIEBpZiAoIWlnbm9yZVJhZGlvKCkpIHtcbiAgICA8ZGl2IFtjbGFzcy5saWJzLXVpLWljb24tcmFkaW8tdW5zZWxlY3RlZF09XCIhYWN0aXZlKClcIlxuICAgICAgW2NsYXNzLnRleHQtWyM2YTczODNdXT1cIiFhY3RpdmUoKVwiXG4gICAgICBbY2xhc3MubGlicy11aS1pY29uLXJhZGlvLXNlbGVjdGVkXT1cIihhY3RpdmUoKSlcIlxuICAgICAgW2NsYXNzLmxpYnMtdWktZGlzYWJsZV09XCJkaXNhYmxlKClcIlxuICAgICAgW2NsYXNzLmxpYnMtdWktZGlzYWJsZS1hY3RpdmVdPVwiZGlzYWJsZSgpICYmIGFjdGl2ZSgpXCJcbiAgICAgIFtjbGFzcy5wb2ludGVyLWV2ZW50cy1ub25lXT1cImRpc2FibGUoKVwiXG4gICAgICBbY2xhc3NdPVwiY2xhc3NJbmNsdWRlSWNvbigpICsgJyBsaWJzLXVpLXJhZGlvLXR5cGUtJyArIHR5cGVSYWRpbygpXCJcbiAgICAgIChjbGljayk9XCJoYW5kbGVyRXZlbnRMYWJlbCgnY2xpY2snKVwiPlxuICAgIDwvZGl2PlxuICB9XG4gIEBpZiAobGlua0ltYWdlRGlzcGxheSgpKSB7XG4gICAgPGltZyAjaW1hZ2VFbFxuICAgICAgW3NyY109XCJsaW5rSW1hZ2VEaXNwbGF5KClcIlxuICAgICAgW2NsYXNzXT1cIidsaWJzLXVpLXJhZGlvLWltYWdlICcgKyBjbGFzc0ltYWdlSW5jbHVkZSgpXCJcbiAgICAgIFtjbGFzcy5jdXJzb3ItZGVmYXVsdF09XCJkaXNhYmxlKClcIlxuICAgICAgW2NsYXNzLnctWzE4cHhdXT1cImltZ1R5cGVJY29uKClcIlxuICAgICAgW2NsYXNzLmgtWzE4cHhdXT1cImltZ1R5cGVJY29uKClcIlxuICAgICAgKGNsaWNrKT1cImhhbmRsZXJFdmVudExhYmVsKCdjbGljaycpXCIgLz5cbiAgfVxuICBAaWYgKGF2YXRhckNvbmZpZygpOyBhcyBhdmF0YXJDb25maWcpIHtcbiAgICA8bGlic191aS1jb21wb25lbnRzLWF2YXRhciBbdHlwZVNoYXBlXT1cImF2YXRhckNvbmZpZy50eXBlU2hhcGUgfHwnY2lyY2xlJ1wiXG4gICAgICBbY2xhc3NJbmNsdWRlXT1cImF2YXRhckNvbmZpZy5jbGFzc0luY2x1ZGVcIlxuICAgICAgW3NpemVdPSdhdmF0YXJDb25maWcuc2l6ZSB8fCAyNCdcbiAgICAgIFtsaW5rQXZhdGFyXT1cImF2YXRhckNvbmZpZy5saW5rQXZhdGFyXCJcbiAgICAgIFtsaW5rQXZhdGFyRXJyb3JdPVwiYXZhdGFyQ29uZmlnLmxpbmtBdmF0YXJFcnJvclwiXG4gICAgICBbaWRHZW5Db2xvcl09XCJhdmF0YXJDb25maWcuaWRHZW5Db2xvclwiXG4gICAgICBbdGV4dEF2YXRhcl09XCJhdmF0YXJDb25maWcudGV4dEF2YXRhclwiIC8+XG4gIH1cbiAgQGlmIChidWxsZXQoKTsgYXMgYnVsbGV0Q29uZmlnKSB7XG4gICAgPGRpdiBjbGFzcz1cImxpYnMtdWktcmFkaW8tYnVsbGV0XCJcbiAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImJ1bGxldENvbmZpZ1snYmFja2dyb3VuZENvbG9yJ11cIlxuICAgICAgW2NsYXNzLmN1cnNvci1kZWZhdWx0XT1cImRpc2FibGUoKVwiXG4gICAgICAoY2xpY2spPVwiaGFuZGxlckV2ZW50TGFiZWwoJ2NsaWNrJylcIj5cbiAgICA8L2Rpdj5cbiAgfVxuICBAaWYgKGxhYmVsKCkpIHtcbiAgICA8bGlic191aS1jb21wb25lbnRzLXBvcG92ZXIgdHlwZT1cInRleHRcIlxuICAgICAgW2F0dHIuaXNMYWJlbF09XCJ0cnVlXCJcbiAgICAgIFtjbGFzc0luY2x1ZGVdPVwiY2xhc3NMYWJlbEluY2x1ZGUoKSArIChkaXNhYmxlKCkgPyAnIGN1cnNvci1kZWZhdWx0JzonIGN1cnNvci1wb2ludGVyJylcIlxuICAgICAgW2lnbm9yZUN1cnNvclBvaW50ZXJNb2RlTGlrZUNsaWNrXT1cImRpc2FibGUoKVwiXG4gICAgICBbY2xhc3MubGlicy11aS1kaXNhYmxlXT1cImRpc2FibGVMYWJlbCgpXCJcbiAgICAgIFtpZ25vcmVTaG93UG9wb3Zlcl09XCJpZ25vcmVQb3BvdmVyTGFiZWwoKVwiXG4gICAgICBbY29uZmlnXT1cIntjb250ZW50OmxhYmVsKCksdGltZXJEZXN0cm95OjUwLCB6SW5kZXg6IHpJbmRleExhYmVsKCl9XCJcbiAgICAgIFtpbm5lckhUTUxdPVwibGFiZWwoKSB8IHRyYW5zbGF0ZTpsYWJlbEludGVycG9sYXRlUGFyYW1zKClcIlxuICAgICAgKG91dENoYW5nU3RhZ2VGbGFnTW91c2UpPSdoYW5kbGVyQ2hhbmdTdGFnZUZsYWdNb3VzZSgkZXZlbnQpJ1xuICAgICAgKG91dEV2ZW50KT1cImhhbmRsZXJFdmVudExhYmVsKCRldmVudClcIiAvPlxuICB9XG4gIEBpZiAocG9wb3ZlcigpOyBhcyBwb3BvdmVyKSB7XG4gICAgQGlmICghcG9wb3Zlci5kYXRhVmlldykge1xuICAgICAgPGkgTGlic1VpQ29tcG9uZW50c1BvcG92ZXJEaXJlY3RpdmVcbiAgICAgICAgW2NvbmZpZ109XCJwb3BvdmVyLmNvbmZpZ1wiXG4gICAgICAgIFtjbGFzc109XCIocG9wb3Zlci5jbGFzc0luY2x1ZGUgPz8gJ2xpYnMtdWktaWNvbi10b29sdGlwLW91dGxpbmUnKVwiXG4gICAgICAgIChvdXRDaGFuZ1N0YWdlRmxhZ01vdXNlKT0naGFuZGxlckNoYW5nU3RhZ2VGbGFnTW91c2UoJGV2ZW50KSc+XG4gICAgICA8L2k+XG4gICAgfVxuICAgIEBpZiAocG9wb3Zlci5kYXRhVmlldykge1xuICAgICAgPGRpdiBMaWJzVWlDb21wb25lbnRzUG9wb3ZlckRpcmVjdGl2ZVxuICAgICAgICBbY29uZmlnXT1cInBvcG92ZXIuY29uZmlnXCJcbiAgICAgICAgW2lubmVySHRtbF09XCIocG9wb3Zlci5kYXRhVmlldyB8fCAnICcpIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgKG91dENoYW5nU3RhZ2VGbGFnTW91c2UpPSdoYW5kbGVyQ2hhbmdTdGFnZUZsYWdNb3VzZSgkZXZlbnQpJz5cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgfVxuICBAaWYgKGRhdGFDb21wb25lbnRPdXRsZXRDb21wdXRlZCgpOyBhcyBkYXRhQ29tcG9uZW50T3V0bGV0Q29tcHV0ZWQpIHtcbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdDb21wb25lbnRPdXRsZXQ9XCJkYXRhQ29tcG9uZW50T3V0bGV0Q29tcHV0ZWQuY29tcG9uZW50OyBpbnB1dHM6ZGF0YUNvbXBvbmVudE91dGxldENvbXB1dGVkLmlucHV0c1wiIC8+XG4gIH1cbjwvZGl2PlxuIl19
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { signal, input, model, output, viewChild, effect, untracked, ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { signal, computed, input, model, output, viewChild, effect, untracked, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import { LibsUiComponentsAvatarComponent } from '@libs-ui/components-avatar';
4
4
  import { LibsUiComponentsPopoverComponent } from '@libs-ui/components-popover';
5
5
  import * as i1 from '@ngx-translate/core';
@@ -12,6 +12,15 @@ import { NgComponentOutlet } from '@angular/common';
12
12
  class LibsUiComponentsRadioSingleComponent {
13
13
  // #region PROPERTY
14
14
  linkImageDisplay = signal('');
15
+ dataComponentOutletComputed = computed(() => {
16
+ if (!this.componentOutlet()) {
17
+ return undefined;
18
+ }
19
+ return {
20
+ component: this.componentOutlet(),
21
+ inputs: this.dataComponentOutlet() || {}
22
+ };
23
+ });
15
24
  onDestroy = new Subject();
16
25
  // #region INPUT
17
26
  key = input();
@@ -85,7 +94,7 @@ class LibsUiComponentsRadioSingleComponent {
85
94
  this.onDestroy.complete();
86
95
  }
87
96
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioSingleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioSingleComponent, isStandalone: true, selector: "libs_ui-components-radio-single", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelInterpolateParams: { classPropertyName: "labelInterpolateParams", publicName: "labelInterpolateParams", isSignal: true, isRequired: false, transformFunction: null }, ignorePopoverLabel: { classPropertyName: "ignorePopoverLabel", publicName: "ignorePopoverLabel", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, linkImage: { classPropertyName: "linkImage", publicName: "linkImage", isSignal: true, isRequired: false, transformFunction: null }, linkImageError: { classPropertyName: "linkImageError", publicName: "linkImageError", isSignal: true, isRequired: false, transformFunction: null }, avatarConfig: { classPropertyName: "avatarConfig", publicName: "avatarConfig", isSignal: true, isRequired: false, transformFunction: null }, classImageInclude: { classPropertyName: "classImageInclude", publicName: "classImageInclude", isSignal: true, isRequired: false, transformFunction: null }, imgTypeIcon: { classPropertyName: "imgTypeIcon", publicName: "imgTypeIcon", isSignal: true, isRequired: false, transformFunction: null }, bullet: { classPropertyName: "bullet", publicName: "bullet", isSignal: true, isRequired: false, transformFunction: null }, popover: { classPropertyName: "popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, disableLabel: { classPropertyName: "disableLabel", publicName: "disableLabel", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, ignoreRadio: { classPropertyName: "ignoreRadio", publicName: "ignoreRadio", isSignal: true, isRequired: false, transformFunction: null }, zIndexLabel: { classPropertyName: "zIndexLabel", publicName: "zIndexLabel", isSignal: true, isRequired: false, transformFunction: null }, classIncludeIcon: { classPropertyName: "classIncludeIcon", publicName: "classIncludeIcon", isSignal: true, isRequired: false, transformFunction: null }, dataComponentOutlet: { classPropertyName: "dataComponentOutlet", publicName: "dataComponentOutlet", isSignal: true, isRequired: false, transformFunction: null }, componentOutlet: { classPropertyName: "componentOutlet", publicName: "componentOutlet", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", outClickLabel: "outClickLabel", outChange: "outChange", outChangStageFlagMousePopover: "outChangStageFlagMousePopover" }, viewQueries: [{ propertyName: "imageEl", first: true, predicate: ["imageEl"], descendants: true, isSignal: true }], ngImport: i0, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (componentOutlet() && dataComponentOutlet()) {\n <ng-container *ngComponentOutlet=\"componentOutlet(); inputs:{item:dataComponentOutlet()}\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "component", type: LibsUiComponentsAvatarComponent, selector: "libs_ui-components-avatar", inputs: ["getLastTextAfterSpace", "typeShape", "classInclude", "size", "linkAvatar", "linkAvatarError", "idGenColor", "textAvatar", "classImageInclude"], outputs: ["outAvatarError"] }, { kind: "component", type: LibsUiComponentsPopoverComponent, selector: "libs_ui-components-popover,[LibsUiComponentsPopoverDirective]", inputs: ["debugId", "flagMouse", "type", "mode", "config", "ignoreShowPopover", "elementRefCustom", "classInclude", "ignoreHiddenPopoverContentWhenMouseLeave", "ignoreStopPropagationEvent", "ignoreCursorPointerModeLikeClick", "isAddContentToParentDocument", "ignoreClickOutside"], outputs: ["outEvent", "outChangStageFlagMouse", "outEventPopoverContent", "outFunctionsControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
97
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LibsUiComponentsRadioSingleComponent, isStandalone: true, selector: "libs_ui-components-radio-single", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelInterpolateParams: { classPropertyName: "labelInterpolateParams", publicName: "labelInterpolateParams", isSignal: true, isRequired: false, transformFunction: null }, ignorePopoverLabel: { classPropertyName: "ignorePopoverLabel", publicName: "ignorePopoverLabel", isSignal: true, isRequired: false, transformFunction: null }, classLabelInclude: { classPropertyName: "classLabelInclude", publicName: "classLabelInclude", isSignal: true, isRequired: false, transformFunction: null }, linkImage: { classPropertyName: "linkImage", publicName: "linkImage", isSignal: true, isRequired: false, transformFunction: null }, linkImageError: { classPropertyName: "linkImageError", publicName: "linkImageError", isSignal: true, isRequired: false, transformFunction: null }, avatarConfig: { classPropertyName: "avatarConfig", publicName: "avatarConfig", isSignal: true, isRequired: false, transformFunction: null }, classImageInclude: { classPropertyName: "classImageInclude", publicName: "classImageInclude", isSignal: true, isRequired: false, transformFunction: null }, imgTypeIcon: { classPropertyName: "imgTypeIcon", publicName: "imgTypeIcon", isSignal: true, isRequired: false, transformFunction: null }, bullet: { classPropertyName: "bullet", publicName: "bullet", isSignal: true, isRequired: false, transformFunction: null }, popover: { classPropertyName: "popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, disableLabel: { classPropertyName: "disableLabel", publicName: "disableLabel", isSignal: true, isRequired: false, transformFunction: null }, clickExactly: { classPropertyName: "clickExactly", publicName: "clickExactly", isSignal: true, isRequired: false, transformFunction: null }, typeRadio: { classPropertyName: "typeRadio", publicName: "typeRadio", isSignal: true, isRequired: false, transformFunction: null }, ignoreRadio: { classPropertyName: "ignoreRadio", publicName: "ignoreRadio", isSignal: true, isRequired: false, transformFunction: null }, zIndexLabel: { classPropertyName: "zIndexLabel", publicName: "zIndexLabel", isSignal: true, isRequired: false, transformFunction: null }, classIncludeIcon: { classPropertyName: "classIncludeIcon", publicName: "classIncludeIcon", isSignal: true, isRequired: false, transformFunction: null }, dataComponentOutlet: { classPropertyName: "dataComponentOutlet", publicName: "dataComponentOutlet", isSignal: true, isRequired: false, transformFunction: null }, componentOutlet: { classPropertyName: "componentOutlet", publicName: "componentOutlet", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange", outClickLabel: "outClickLabel", outChange: "outChange", outChangStageFlagMousePopover: "outChangStageFlagMousePopover" }, viewQueries: [{ propertyName: "imageEl", first: true, predicate: ["imageEl"], descendants: true, isSignal: true }], ngImport: i0, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (dataComponentOutletComputed(); as dataComponentOutletComputed) {\n <ng-container\n *ngComponentOutlet=\"dataComponentOutletComputed.component; inputs:dataComponentOutletComputed.inputs\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "component", type: LibsUiComponentsAvatarComponent, selector: "libs_ui-components-avatar", inputs: ["getLastTextAfterSpace", "typeShape", "classInclude", "size", "linkAvatar", "linkAvatarError", "idGenColor", "textAvatar", "classImageInclude"], outputs: ["outAvatarError"] }, { kind: "component", type: LibsUiComponentsPopoverComponent, selector: "libs_ui-components-popover,[LibsUiComponentsPopoverDirective]", inputs: ["debugId", "flagMouse", "type", "mode", "config", "ignoreShowPopover", "elementRefCustom", "classInclude", "ignoreHiddenPopoverContentWhenMouseLeave", "ignoreStopPropagationEvent", "ignoreCursorPointerModeLikeClick", "isAddContentToParentDocument", "ignoreClickOutside"], outputs: ["outEvent", "outChangStageFlagMouse", "outEventPopoverContent", "outFunctionsControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
89
98
  }
90
99
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsRadioSingleComponent, decorators: [{
91
100
  type: Component,
@@ -93,7 +102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
93
102
  TranslateModule, NgComponentOutlet,
94
103
  LibsUiComponentsAvatarComponent,
95
104
  LibsUiComponentsPopoverComponent
96
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (componentOutlet() && dataComponentOutlet()) {\n <ng-container *ngComponentOutlet=\"componentOutlet(); inputs:{item:dataComponentOutlet()}\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"] }]
105
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (dataComponentOutletComputed(); as dataComponentOutletComputed) {\n <ng-container\n *ngComponentOutlet=\"dataComponentOutletComputed.component; inputs:dataComponentOutletComputed.inputs\" />\n }\n</div>\n", styles: [":host .libs-ui-radio{display:flex;align-items:center}:host .libs-ui-radio .libs-ui-icon-radio-unselected,:host .libs-ui-radio .libs-ui-icon-radio-selected{margin-right:8px;font-size:16px;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-type-medium:before{font-size:20px!important}:host .libs-ui-radio .libs-ui-radio-image{width:24px;height:24px;margin-right:8px;border-radius:12px;border:solid 1px #e6e8ed;cursor:pointer}:host .libs-ui-radio .libs-ui-radio-bullet{min-width:10px;min-height:10px;border-radius:50%;margin-right:8px;cursor:pointer}:host .libs-ui-radio libs_ui-components-popover[isLabel=true]{max-width:100%;margin-right:8px}:host .libs-ui-radio .libs-ui-icon-radio-selected:before{color:var(--libs-ui-color-default, #226FF5)}:host .libs-ui-radio .libs-ui-radio-tooltip-icon{font-size:16px}:host .libs-ui-radio>[class*=libs-ui-icon]{font-size:16px;cursor:pointer;margin-right:8px}\n"] }]
97
106
  }], ctorParameters: () => [] });
98
107
 
99
108
  /* eslint-disable @typescript-eslint/no-explicit-any */
@@ -1 +1 @@
1
- {"version":3,"file":"libs-ui-components-radio-single.mjs","sources":["../../../../../../libs-ui/components/radio/single/src/radio.component.ts","../../../../../../libs-ui/components/radio/single/src/radio.component.html","../../../../../../libs-ui/components/radio/single/src/interfaces/radio.interface.ts","../../../../../../libs-ui/components/radio/single/src/libs-ui-components-radio-single.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, OnDestroy, effect, input, model, output, signal, untracked, viewChild } from '@angular/core';\nimport { IAvatarConfig, LibsUiComponentsAvatarComponent } from '@libs-ui/components-avatar';\nimport { IFlagMouse, IPopover, LibsUiComponentsPopoverComponent } from '@libs-ui/components-popover';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { Subject, fromEvent } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\nimport { IRadioEvent } from './interfaces';\nimport { LibsUiComponentsComponnentOutletComponent, TYPE_COMPONENT_OUTLET_DATA } from '@libs-ui/components-component-outlet';\nimport { NgComponentOutlet } from '@angular/common';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'libs_ui-components-radio-single',\n templateUrl: './radio.component.html',\n styleUrls: ['./radio.component.scss'],\n standalone: true,\n imports: [\n TranslateModule, NgComponentOutlet,\n LibsUiComponentsAvatarComponent,\n LibsUiComponentsPopoverComponent\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class LibsUiComponentsRadioSingleComponent implements AfterViewInit, OnDestroy {\n // #region PROPERTY\n protected linkImageDisplay = signal<string>('');\n\n private onDestroy = new Subject<void>();\n\n // #region INPUT\n readonly key = input<unknown>();\n readonly active = model<boolean>(false);\n readonly classInclude = input<string>('');\n readonly label = input<string>('');\n readonly labelInterpolateParams = input<Record<string, unknown> | undefined, Record<string, unknown> | undefined>({}, { transform: value => value || {} });\n readonly ignorePopoverLabel = input<boolean>();\n readonly classLabelInclude = input<string | undefined, string | undefined>('libs-ui-font-h4r ', { transform: (value) => value || '' });\n readonly linkImage = input<string>('');\n readonly linkImageError = input<string>('');\n readonly avatarConfig = input<IAvatarConfig>();\n readonly classImageInclude = input<string>('');\n readonly imgTypeIcon = input<boolean>();\n readonly bullet = input<Record<string, string>>();\n readonly popover = input<IPopover>();\n readonly disable = input<boolean>();\n readonly disableLabel = input<boolean>();\n readonly clickExactly = input<boolean | undefined, boolean | undefined>(true, { transform: value => value ?? true });\n readonly typeRadio = input<'normal' | 'medium' | undefined, 'normal' | 'medium' | undefined>('normal', { transform: value => value || 'normal' });\n readonly ignoreRadio = input<boolean>();\n readonly zIndexLabel = input<number | undefined, number | undefined>(1200, { transform: value => value ?? 1200 });\n readonly classIncludeIcon = input<string | undefined, string | undefined>('', { transform: (value) => value || '' });\n\n readonly dataComponentOutlet = input<TYPE_COMPONENT_OUTLET_DATA>();\n readonly componentOutlet = input<LibsUiComponentsComponnentOutletComponent | any>();\n\n // #region OUTPUT\n readonly outClickLabel = output<void>();\n readonly outChange = output<IRadioEvent>();\n readonly outChangStageFlagMousePopover = output<IFlagMouse>();\n\n /* VIEW CHILD */\n private imageEl = viewChild<ElementRef>('imageEl');\n\n constructor() {\n effect(() => {\n this.linkImage();\n untracked(() => this.linkImageDisplay.set(this.linkImage()));\n });\n }\n\n ngAfterViewInit() {\n if (this.imageEl()) {\n fromEvent(this.imageEl()?.nativeElement, 'error').pipe(take(1), takeUntil(this.onDestroy)).subscribe(() => {\n this.linkImageDisplay.set(this.linkImageError())\n });\n }\n }\n\n /* FUNCTIONS */\n protected async handlerClick(e: Event) {\n if (this.clickExactly()) {\n return;\n }\n e.stopPropagation();\n this.changeActive();\n }\n\n protected async handlerEventLabel(type: string) {\n if (type === 'click') {\n this.outClickLabel.emit();\n this.changeActive();\n }\n }\n\n private async changeActive() {\n if (this.active() || this.disable()) {\n return;\n }\n this.active.update(value => !value);\n this.outChange.emit({ active: this.active(), key: this.key() });\n }\n\n protected async handlerChangStageFlagMouse(flag: IFlagMouse) {\n this.outChangStageFlagMousePopover.emit(flag);\n }\n\n ngOnDestroy(): void {\n this.onDestroy.next();\n this.onDestroy.complete();\n }\n}\n","<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (componentOutlet() && dataComponentOutlet()) {\n <ng-container *ngComponentOutlet=\"componentOutlet(); inputs:{item:dataComponentOutlet()}\" />\n }\n</div>\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { IAvatarConfig } from \"@libs-ui/components-avatar\";\nimport { IPopover } from \"@libs-ui/components-popover\";\n\nexport interface IRadioItem {\n key: any;\n active: boolean;\n classInclude?: string;\n label?: string;\n labelInterpolateParams?: Record<string, unknown>;\n ignorePopoverLabel?: boolean;\n classLabelInclude?: string;\n popover?: IPopover;\n disable?: boolean;\n disableLabel?: boolean;\n clickExactly?: boolean;\n zIndexLabel?: number;\n avatarConfig?: IAvatarConfig;\n data?: any;\n [key: string]: any;\n}\n\nexport interface IRadioEvent {\n active: boolean;\n key: any;\n item?: any;\n}\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-single.mjs","sources":["../../../../../../libs-ui/components/radio/single/src/radio.component.ts","../../../../../../libs-ui/components/radio/single/src/radio.component.html","../../../../../../libs-ui/components/radio/single/src/interfaces/radio.interface.ts","../../../../../../libs-ui/components/radio/single/src/libs-ui-components-radio-single.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, OnDestroy, computed, effect, input, model, output, signal, untracked, viewChild } from '@angular/core';\nimport { IAvatarConfig, LibsUiComponentsAvatarComponent } from '@libs-ui/components-avatar';\nimport { IFlagMouse, IPopover, LibsUiComponentsPopoverComponent } from '@libs-ui/components-popover';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { Subject, fromEvent } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\nimport { IRadioEvent } from './interfaces';\nimport { LibsUiComponentsComponnentOutletComponent, TYPE_COMPONENT_OUTLET_DATA } from '@libs-ui/components-component-outlet';\nimport { NgComponentOutlet } from '@angular/common';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'libs_ui-components-radio-single',\n templateUrl: './radio.component.html',\n styleUrls: ['./radio.component.scss'],\n standalone: true,\n imports: [\n TranslateModule, NgComponentOutlet,\n LibsUiComponentsAvatarComponent,\n LibsUiComponentsPopoverComponent\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\n\nexport class LibsUiComponentsRadioSingleComponent implements AfterViewInit, OnDestroy {\n // #region PROPERTY\n protected linkImageDisplay = signal<string>('');\n protected dataComponentOutletComputed = computed(() => {\n if (!this.componentOutlet()) {\n return undefined;\n }\n return {\n component: this.componentOutlet(),\n inputs: this.dataComponentOutlet() || {}\n };\n });\n private onDestroy = new Subject<void>();\n\n // #region INPUT\n readonly key = input<unknown>();\n readonly active = model<boolean>(false);\n readonly classInclude = input<string>('');\n readonly label = input<string>('');\n readonly labelInterpolateParams = input<Record<string, unknown> | undefined, Record<string, unknown> | undefined>({}, { transform: value => value || {} });\n readonly ignorePopoverLabel = input<boolean>();\n readonly classLabelInclude = input<string | undefined, string | undefined>('libs-ui-font-h4r ', { transform: (value) => value || '' });\n readonly linkImage = input<string>('');\n readonly linkImageError = input<string>('');\n readonly avatarConfig = input<IAvatarConfig>();\n readonly classImageInclude = input<string>('');\n readonly imgTypeIcon = input<boolean>();\n readonly bullet = input<Record<string, string>>();\n readonly popover = input<IPopover>();\n readonly disable = input<boolean>();\n readonly disableLabel = input<boolean>();\n readonly clickExactly = input<boolean | undefined, boolean | undefined>(true, { transform: value => value ?? true });\n readonly typeRadio = input<'normal' | 'medium' | undefined, 'normal' | 'medium' | undefined>('normal', { transform: value => value || 'normal' });\n readonly ignoreRadio = input<boolean>();\n readonly zIndexLabel = input<number | undefined, number | undefined>(1200, { transform: value => value ?? 1200 });\n readonly classIncludeIcon = input<string | undefined, string | undefined>('', { transform: (value) => value || '' });\n\n readonly dataComponentOutlet = input<TYPE_COMPONENT_OUTLET_DATA>();\n readonly componentOutlet = input<LibsUiComponentsComponnentOutletComponent | any>();\n\n // #region OUTPUT\n readonly outClickLabel = output<void>();\n readonly outChange = output<IRadioEvent>();\n readonly outChangStageFlagMousePopover = output<IFlagMouse>();\n\n /* VIEW CHILD */\n private imageEl = viewChild<ElementRef>('imageEl');\n\n constructor() {\n effect(() => {\n this.linkImage();\n untracked(() => this.linkImageDisplay.set(this.linkImage()));\n });\n }\n\n ngAfterViewInit() {\n if (this.imageEl()) {\n fromEvent(this.imageEl()?.nativeElement, 'error').pipe(take(1), takeUntil(this.onDestroy)).subscribe(() => {\n this.linkImageDisplay.set(this.linkImageError())\n });\n }\n }\n\n /* FUNCTIONS */\n protected async handlerClick(e: Event) {\n if (this.clickExactly()) {\n return;\n }\n e.stopPropagation();\n this.changeActive();\n }\n\n protected async handlerEventLabel(type: string) {\n if (type === 'click') {\n this.outClickLabel.emit();\n this.changeActive();\n }\n }\n\n private async changeActive() {\n if (this.active() || this.disable()) {\n return;\n }\n this.active.update(value => !value);\n this.outChange.emit({ active: this.active(), key: this.key() });\n }\n\n protected async handlerChangStageFlagMouse(flag: IFlagMouse) {\n this.outChangStageFlagMousePopover.emit(flag);\n }\n\n ngOnDestroy(): void {\n this.onDestroy.next();\n this.onDestroy.complete();\n }\n}\n","<div [class]=\"'libs-ui-radio ' + classInclude()\"\n [class.cursor-pointer]=\"!clickExactly()\"\n (click)=\"handlerClick($event)\">\n @if (!ignoreRadio()) {\n <div [class.libs-ui-icon-radio-unselected]=\"!active()\"\n [class.text-[#6a7383]]=\"!active()\"\n [class.libs-ui-icon-radio-selected]=\"(active())\"\n [class.libs-ui-disable]=\"disable()\"\n [class.libs-ui-disable-active]=\"disable() && active()\"\n [class.pointer-events-none]=\"disable()\"\n [class]=\"classIncludeIcon() + ' libs-ui-radio-type-' + typeRadio()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (linkImageDisplay()) {\n <img #imageEl\n [src]=\"linkImageDisplay()\"\n [class]=\"'libs-ui-radio-image ' + classImageInclude()\"\n [class.cursor-default]=\"disable()\"\n [class.w-[18px]]=\"imgTypeIcon()\"\n [class.h-[18px]]=\"imgTypeIcon()\"\n (click)=\"handlerEventLabel('click')\" />\n }\n @if (avatarConfig(); as avatarConfig) {\n <libs_ui-components-avatar [typeShape]=\"avatarConfig.typeShape ||'circle'\"\n [classInclude]=\"avatarConfig.classInclude\"\n [size]='avatarConfig.size || 24'\n [linkAvatar]=\"avatarConfig.linkAvatar\"\n [linkAvatarError]=\"avatarConfig.linkAvatarError\"\n [idGenColor]=\"avatarConfig.idGenColor\"\n [textAvatar]=\"avatarConfig.textAvatar\" />\n }\n @if (bullet(); as bulletConfig) {\n <div class=\"libs-ui-radio-bullet\"\n [style.background-color]=\"bulletConfig['backgroundColor']\"\n [class.cursor-default]=\"disable()\"\n (click)=\"handlerEventLabel('click')\">\n </div>\n }\n @if (label()) {\n <libs_ui-components-popover type=\"text\"\n [attr.isLabel]=\"true\"\n [classInclude]=\"classLabelInclude() + (disable() ? ' cursor-default':' cursor-pointer')\"\n [ignoreCursorPointerModeLikeClick]=\"disable()\"\n [class.libs-ui-disable]=\"disableLabel()\"\n [ignoreShowPopover]=\"ignorePopoverLabel()\"\n [config]=\"{content:label(),timerDestroy:50, zIndex: zIndexLabel()}\"\n [innerHTML]=\"label() | translate:labelInterpolateParams()\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'\n (outEvent)=\"handlerEventLabel($event)\" />\n }\n @if (popover(); as popover) {\n @if (!popover.dataView) {\n <i LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [class]=\"(popover.classInclude ?? 'libs-ui-icon-tooltip-outline')\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </i>\n }\n @if (popover.dataView) {\n <div LibsUiComponentsPopoverDirective\n [config]=\"popover.config\"\n [innerHtml]=\"(popover.dataView || ' ') | translate\"\n (outChangStageFlagMouse)='handlerChangStageFlagMouse($event)'>\n </div>\n }\n }\n @if (dataComponentOutletComputed(); as dataComponentOutletComputed) {\n <ng-container\n *ngComponentOutlet=\"dataComponentOutletComputed.component; inputs:dataComponentOutletComputed.inputs\" />\n }\n</div>\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nimport { IAvatarConfig } from \"@libs-ui/components-avatar\";\nimport { IPopover } from \"@libs-ui/components-popover\";\n\nexport interface IRadioItem {\n key: any;\n active: boolean;\n classInclude?: string;\n label?: string;\n labelInterpolateParams?: Record<string, unknown>;\n ignorePopoverLabel?: boolean;\n classLabelInclude?: string;\n popover?: IPopover;\n disable?: boolean;\n disableLabel?: boolean;\n clickExactly?: boolean;\n zIndexLabel?: number;\n avatarConfig?: IAvatarConfig;\n data?: any;\n [key: string]: any;\n}\n\nexport interface IRadioEvent {\n active: boolean;\n key: any;\n item?: any;\n}\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,10 +1,10 @@
1
1
  {
2
2
  "name": "@libs-ui/components-radio-single",
3
- "version": "0.2.208",
3
+ "version": "0.2.210",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^18.2.0",
6
- "@libs-ui/components-avatar": "^0.2.208",
7
- "@libs-ui/components-popover": "^0.2.208",
6
+ "@libs-ui/components-avatar": "^0.2.210",
7
+ "@libs-ui/components-popover": "^0.2.210",
8
8
  "@ngx-translate/core": "^15.0.0",
9
9
  "rxjs": "~7.8.0"
10
10
  },
@@ -6,6 +6,10 @@ import { TYPE_COMPONENT_OUTLET_DATA } from '@libs-ui/components-component-outlet
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class LibsUiComponentsRadioSingleComponent implements AfterViewInit, OnDestroy {
8
8
  protected linkImageDisplay: import("@angular/core").WritableSignal<string>;
9
+ protected dataComponentOutletComputed: import("@angular/core").Signal<{
10
+ component: any;
11
+ inputs: {};
12
+ } | undefined>;
9
13
  private onDestroy;
10
14
  readonly key: import("@angular/core").InputSignal<unknown>;
11
15
  readonly active: import("@angular/core").ModelSignal<boolean>;