{"version":3,"file":"common.7e22293c4b89369c.js","mappings":"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","names":["BiAddressServiceBase","constructor","this","http","inject","HttpClient","getAddressContactsInfo","queryObject","post","ApiRouting","addressEndpoints","getAddressesWithContactInfo","getCompaniesOnAddress","getStatusForEntryAddress","street","number","letter","zipCode","smsGroupId","get","smsGroupStatusRoutes","params","getStatusForMessagesAsync","kvhx","getStatusForMessages","getAddresses","countryId","zipcode","streetName","streetId","getCityName","zip","factory","ɵfac","providedIn","BiDialogBaseService","confirmationService","ConfirmationService","translator","BiTranslateService","openSimpleDismissable","title","text","icon","callback","confirm","header","message","accept","acceptLabel","acceptVisible","rejectVisible","openConfirmWarning","acceptCallback","rejectCallback","isStringNullOrEmpty","confirmation","instant","acceptButtonStyleClass","reject","rejectLabel","openConfirm","buttonTranslationKeys","acceptKey","rejectKey","BiStore","initialState","state","BehaviorSubject","state$","asObservable","getCurrentStateValue","value","setState","next","WebModuleService","super","baseRoute","getDriftstatusWebMessagesModel","customerPublicIds","extraUrlParams","profileIds","fromUtc","toUtc","type","onlyExpired","completedAsActive","getDriftstatusWebMessagesMapModel","internalOnly","urlParams","customerIds","getProfileMapSettingsAndMessages","onlyArchived","getValue","profileMapSettingsAndMessagesArchived","of","pipe","tap","settingsAndMessages","i0","i1","_c0","_c1","a0","a1","a2","a3","_c2","_c3","RadioButton_label_6_Template","rf","ctx","_r3","$event","ctx_r3","select","input_r2","labelStyleClass","checked","disabled","focused","inputId","label","RADIO_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","RadioButton","multi","RadioControlRegistry","accessors","add","control","accessor","push","remove","filter","c","forEach","isSameGroup","writeValue","controlPair","root","name","static","__ngFactoryType__","token","cd","injector","registry","config","formControlName","variant","tabindex","ariaLabelledBy","ariaLabel","style","styleClass","autofocus","onClick","EventEmitter","onFocus","onBlur","inputViewChild","onModelChange","onModelTouched","ngOnInit","NgControl","checkName","handleClick","event","radioButton","focus","nativeElement","emit","originalEvent","markForCheck","registerOnChange","fn","registerOnTouched","setDisabledState","val","onInputFocus","onInputBlur","ngOnDestroy","throwNameError","Error","selectors","viewQuery","_t","first","hostAttrs","inputs","booleanAttribute","numberAttribute","outputs","standalone","features","decls","vars","consts","template","_r1","inputStyle","dependencies","i2","i3","encapsulation","changeDetection","RadioButtonModule","imports","CommonModule","AutoFocusModule"],"ignoreList":[],"sourceRoot":"webpack:///","sources":["./app-globals/services/address-base.service.ts","./app-globals/services/bi-dialog-base.service.ts","./app-globals/classes/BiStore.ts","./side-projects/iframe-modules/src/app/core/web-module.service.ts","./node_modules/primeng/fesm2022/primeng-radiobutton.mjs"],"sourcesContent":["import { HttpClient } from \"@angular/common/http\";\r\nimport { inject, Injectable } from \"@angular/core\";\r\nimport { ApiRouting } from \"@globals/classes/ApiRouting\";\r\nimport { BiCountryId } from \"@globals/enums/BiLanguageAndCountryId\";\r\nimport { AddressDto } from \"@globals/openapi-models/model/addressDto\";\r\nimport { AddressModel } from \"@globals/openapi-models/model/addressModel\";\r\nimport { CompanyRegistrationDto } from \"@globals/openapi-models/model/companyRegistrationDto\";\r\nimport { EntryAddressStatusDetails } from \"@globals/openapi-models/model/entryAddressStatusDetails\";\r\nimport { GetAddressInfoQuery } from \"@globals/openapi-models/model/getAddressInfoQuery\";\r\nimport { MessageStatusDetailsReadModel } from \"@globals/openapi-models/model/messageStatusDetailsReadModel\";\r\nimport { Observable } from \"rxjs\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class BiAddressServiceBase {\r\n protected http: HttpClient;\r\n constructor() {\r\n this.http = inject(HttpClient);\r\n }\r\n\r\n /**\r\n * Returns all phone numbers and person names existing on an address were at least house number or meters is specified\r\n */\r\n public getAddressContactsInfo(queryObject: GetAddressInfoQuery): Observable {\r\n return this.http.post(ApiRouting.addressEndpoints.post.getAddressesWithContactInfo, queryObject);\r\n }\r\n\r\n public getCompaniesOnAddress(queryObject: GetAddressInfoQuery): Observable {\r\n return this.http.post(ApiRouting.addressEndpoints.post.getCompaniesOnAddress, queryObject);\r\n }\r\n\r\n /**\r\n * Return the Address When a Marker is clicked on the Status Map.\r\n */\r\n public getStatusForEntryAddress(street: string, number: number, letter: string, zipCode: number, smsGroupId: number) {\r\n const params = { street, number, letter, zipCode, smsGroupId };\r\n return this.http.get(ApiRouting.smsGroupStatusRoutes.get.getStatusForEntryAddress, { params: params });\r\n }\r\n\r\n /**\r\n * @param kvhx Get status details of the messages/smslogs associated with the provided kvhx and SmsGroup Id\r\n */\r\n public getStatusForMessagesAsync(kvhx: string, smsGroupId: number) {\r\n return this.http.get(ApiRouting.smsGroupStatusRoutes.get.getStatusForMessages, { params: { kvhx, smsGroupId } });\r\n }\r\n\r\n /**\r\n * Returns all addresses existing under a house number.\r\n */\r\n public getAddresses(countryId: BiCountryId, zipcode: number, streetName?: string, streetId?: number, number?: number) {\r\n const params = { countryId, zipcode, streetId, streetName, number };\r\n\r\n return this.http.get(ApiRouting.addressEndpoints.get.getAddresses, { params: params });\r\n }\r\n\r\n public getCityName(countryId: BiCountryId, zip: number) {\r\n return this.http.get(ApiRouting.addressEndpoints.get.getCityName, { params: { countryId, zip } });\r\n }\r\n}\r\n","import { inject, Injectable } from \"@angular/core\";\r\nimport { BiTranslateService } from \"@globals/bi-translate\";\r\nimport { isStringNullOrEmpty } from \"@globals/helper-functions\";\r\nimport { Confirmation, ConfirmationService } from \"primeng/api\";\r\n\r\n@Injectable({\r\n providedIn: \"root\"\r\n})\r\nexport class BiDialogBaseService {\r\n protected confirmationService: ConfirmationService;\r\n protected translator: BiTranslateService;\r\n\r\n constructor() {\r\n this.confirmationService = inject(ConfirmationService);\r\n this.translator = inject(BiTranslateService);\r\n }\r\n\r\n /**\r\n * Opens dialog window with a header and dismiss button inside. This makes use of Prime Ng ConfirmDialog, which we have placed inside AppComponent's html\r\n * @param callback Optional callback - if not passed, dialog window will close itself.\r\n * @param icon Icon class name. This will display an icon next to the message\r\n * @param dialogKey Unique identifier for the Prime Ng ConfirmDialog being opened. Default is \"app-dialog\" which is set for the main dialog in AppComponent (BiDialogComponent)\r\n */\r\n public openSimpleDismissable(title: string, text?: string, icon?: string, callback?: () => void) {\r\n this.confirmationService.confirm({\r\n header: title,\r\n message: text,\r\n accept: callback,\r\n acceptLabel: \"OK\",\r\n acceptVisible: true,\r\n rejectVisible: false,\r\n icon: icon\r\n });\r\n }\r\n\r\n /**\r\n * Like the openConfirm but with a red accept button and less parameters.\r\n * For delete-actions or something that has an important outcome\r\n * @param dialogKey Unique identifier for the Prime Ng ConfirmDialog being opened. Default is \"app-dialog\" which is set for the main dialog in AppComponent (BiDialogComponent)\r\n */\r\n public openConfirmWarning(header: string, acceptCallback: () => void, message?: string, rejectCallback?: () => void) {\r\n if (isStringNullOrEmpty(header)) throw \"No header provided for dialog!\";\r\n\r\n const confirmation: Confirmation = {\r\n header: header,\r\n message: message,\r\n accept: acceptCallback,\r\n acceptLabel: this.translator.instant(\"shared.Yes\"),\r\n acceptButtonStyleClass: \"p-button-danger confirmDialogOkButton\", // This class confirmDialogOkButton is used by the UI tests to find the Ok button.\r\n reject: rejectCallback,\r\n rejectLabel: this.translator.instant(\"shared.No\"),\r\n acceptVisible: true,\r\n rejectVisible: true\r\n };\r\n\r\n return this.confirmationService.confirm(confirmation);\r\n }\r\n\r\n /**\r\n * Opens dialog window used for something to confirm. This is a dialog that we use alot of places and therefore we have this\r\n * helper funtion.\r\n * @param buttonTranslationKeys: To control the text being displayed on the buttons for yes/no. Default is keys for \"Yes\" and \"No\"\r\n * @param dialogKey Unique identifier for the Prime Ng ConfirmDialog being opened. Default is \"app-dialog\" which is set for the main dialog in AppComponent (BiDialogComponent)\r\n */\r\n public openConfirm(\r\n header: string,\r\n acceptCallback: () => void,\r\n rejectCallback?: () => void,\r\n message?: string,\r\n buttonTranslationKeys?: { acceptKey: string; rejectKey: string },\r\n acceptVisible = true,\r\n rejectVisible = true\r\n ) {\r\n const confirmation: Confirmation = {\r\n header: header,\r\n message: message,\r\n accept: acceptCallback,\r\n acceptVisible: acceptVisible,\r\n acceptButtonStyleClass: \"confirmDialogOkButton\", // This class confirmDialogOkButton is used by the UI tests to find the Ok button.\r\n rejectVisible: rejectVisible,\r\n acceptLabel: this.translator.instant(buttonTranslationKeys?.acceptKey ?? \"shared.Yes\"),\r\n rejectLabel: this.translator.instant(buttonTranslationKeys?.rejectKey ?? \"shared.No\")\r\n };\r\n if (rejectCallback) confirmation.reject = rejectCallback;\r\n\r\n this.confirmationService.confirm(confirmation);\r\n }\r\n}\r\n","import { Observable, BehaviorSubject } from \"rxjs\";\r\n/**\r\n * Interface for a custom store that store's a part of the application's state data.\r\n * Where storage of state data is relevant in the application, extend this interface with a class named after\r\n * the feature area. Like \"PoslistStore\" or something.\r\n * Inpired by this great article: https://jurebajt.com/state-management-in-angular-with-observable-store-services/.\r\n **/\r\nexport class BiStore {\r\n protected state: BehaviorSubject;\r\n\r\n /**\r\n * The current, observable state value\r\n */\r\n public state$: Observable;\r\n\r\n protected constructor(initialState: T) {\r\n this.state = new BehaviorSubject(initialState);\r\n this.state$ = this.state.asObservable();\r\n }\r\n\r\n /**\r\n * Returns the current, raw value of the state\r\n */\r\n public getCurrentStateValue(): T {\r\n return this.state.value;\r\n }\r\n\r\n public setState(state: T) {\r\n this.state.next(state);\r\n }\r\n}\r\n","import { HttpClient } from \"@angular/common/http\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BiStore } from \"@globals/classes/BiStore\";\r\nimport { isStringNullOrEmpty } from \"@globals/helper-functions\";\r\nimport { DriftstatusWebMessagesMapModel } from \"@globals/openapi-models/model/driftstatusWebMessagesMapModel\";\r\nimport { DriftstatusWebMessagesMapModelCommand } from \"@globals/openapi-models/model/driftstatusWebMessagesMapModelCommand\";\r\nimport { DriftstatusWebMessagesModel } from \"@globals/openapi-models/model/driftstatusWebMessagesModel\";\r\nimport { DriftstatusWebMessagesModelCommand } from \"@globals/openapi-models/model/driftstatusWebMessagesModelCommand\";\r\nimport { ProfileMapSettingsAndMessages } from \"@globals/openapi-models/model/profileMapSettingsAndMessages\";\r\nimport { WebMessageType } from \"@globals/openapi-models/model/webMessageType\";\r\nimport { of, tap } from \"rxjs\";\r\n\r\ninterface WebModuleState {\r\n profileMapSettingsAndMessagesArchived?: Array;\r\n}\r\n\r\n@Injectable()\r\nexport class WebModuleService extends BiStore {\r\n private baseRoute = \"/api/WebMessage/\";\r\n constructor(private http: HttpClient) {\r\n super({});\r\n }\r\n\r\n /**\r\n * Returns the model used for Driftstaus WEB module. Contains customer settings as well as a list of the\r\n * profile web messages grouped under a title. Note: if profileIds isn't provided, all webmessages for all profiles\r\n * are returned in the model.\r\n * @param customerPublicIds A list of customer public ids (GUIDs). Implemented as a list in order to support multiple customer ids.\r\n * @param profileIds Commaseparatedlist of profile ids. If passed, only web messages for these profile will be returned in the model\r\n * @param fromUtc Return web messages from this date\r\n * @param toUtc Return web messages to this date\r\n */\r\n public getDriftstatusWebMessagesModel(\r\n customerPublicIds: Array,\r\n extraUrlParams: { [key: string]: string },\r\n profileIds?: Array,\r\n fromUtc?: string,\r\n toUtc?: string,\r\n type?: WebMessageType,\r\n onlyExpired?: boolean,\r\n completedAsActive?: boolean\r\n ) {\r\n const driftstatusRequestDto: DriftstatusWebMessagesModelCommand = {\r\n customerPublicIds: customerPublicIds,\r\n profileIds: profileIds,\r\n fromUtc: fromUtc,\r\n toUtc: toUtc,\r\n type: type,\r\n onlyExpired: onlyExpired,\r\n completedAsActive: completedAsActive,\r\n extraUrlParams: extraUrlParams\r\n };\r\n\r\n return this.http.post(this.baseRoute + \"GetDriftstatusWebMessagesModel\", driftstatusRequestDto);\r\n }\r\n\r\n /**\r\n * Returns the model used for the Driftstatus WEB MAP module. Note: if profileIds is not passed, then all the customer's set up profiles will be used.\r\n * @param profileIds String representing a commaseparated list of ids of the profiles which WEB messages should be included on the map.\r\n */\r\n public getDriftstatusWebMessagesMapModel(customerPublicIds: string, internalOnly: boolean, urlParams: { [key: string]: string }, profileIds?: string) {\r\n const driftstatusRequestDto: DriftstatusWebMessagesMapModelCommand = {\r\n customerIds: customerPublicIds,\r\n internalOnly: internalOnly,\r\n urlParams: urlParams,\r\n profileIds: profileIds\r\n };\r\n\r\n return this.http.post(this.baseRoute + \"GetDriftstatusWebMessagesMapModel\", driftstatusRequestDto);\r\n }\r\n\r\n public getProfileMapSettingsAndMessages(customerPublicIds: string, profileIds: string, onlyArchived = false, internalOnly = false) {\r\n if (!onlyArchived || !this.state.getValue().profileMapSettingsAndMessagesArchived) {\r\n const params: { [key: string]: number | boolean | string } = {\r\n customerPublicIds,\r\n onlyArchived,\r\n internalOnly\r\n };\r\n if (!isStringNullOrEmpty(profileIds)) params[\"profileIds\"] = profileIds;\r\n\r\n return this.http.get(this.baseRoute + \"GetProfileMapSettingsAndMessages\", { params: params }).pipe(\r\n tap(settingsAndMessages => {\r\n // Cache result for the archived messages\r\n if (onlyArchived) this.setState({ ...this.state.value, profileMapSettingsAndMessagesArchived: settingsAndMessages });\r\n })\r\n );\r\n } else {\r\n return of(this.state.value.profileMapSettingsAndMessagesArchived);\r\n }\r\n }\r\n}\r\n","import * as i2 from '@angular/common';\nimport { CommonModule } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { forwardRef, Injectable, EventEmitter, booleanAttribute, numberAttribute, Component, ChangeDetectionStrategy, Input, Output, ViewChild, NgModule } from '@angular/core';\nimport { NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';\nimport * as i3 from 'primeng/autofocus';\nimport { AutoFocusModule } from 'primeng/autofocus';\nimport * as i1 from 'primeng/api';\n\nconst RADIO_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RadioButton),\n multi: true\n};\nclass RadioControlRegistry {\n accessors = [];\n add(control, accessor) {\n this.accessors.push([control, accessor]);\n }\n remove(accessor) {\n this.accessors = this.accessors.filter((c) => {\n return c[1] !== accessor;\n });\n }\n select(accessor) {\n this.accessors.forEach((c) => {\n if (this.isSameGroup(c, accessor) && c[1] !== accessor) {\n c[1].writeValue(accessor.value);\n }\n });\n }\n isSameGroup(controlPair, accessor) {\n if (!controlPair[0].control) {\n return false;\n }\n return controlPair[0].control.root === accessor.control.control.root && controlPair[1].name === accessor.name;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioControlRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioControlRegistry, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioControlRegistry, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }] });\n/**\n * RadioButton is an extension to standard radio button element with theming.\n * @group Components\n */\nclass RadioButton {\n cd;\n injector;\n registry;\n config;\n /**\n * Value of the radiobutton.\n * @group Props\n */\n value;\n /**\n * The name of the form control.\n * @group Props\n */\n formControlName;\n /**\n * Name of the radiobutton group.\n * @group Props\n */\n name;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n disabled;\n /**\n * Label of the radiobutton.\n * @group Props\n */\n label;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n variant = 'outlined';\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n tabindex;\n /**\n * Identifier of the focus input to match a label defined for the component.\n * @group Props\n */\n inputId;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n ariaLabelledBy;\n /**\n * Used to define a string that labels the input element.\n * @group Props\n */\n ariaLabel;\n /**\n * Inline style of the component.\n * @group Props\n */\n style;\n /**\n * Style class of the component.\n * @group Props\n */\n styleClass;\n /**\n * Style class of the label.\n * @group Props\n */\n labelStyleClass;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n autofocus;\n /**\n * Callback to invoke on radio button click.\n * @param {RadioButtonClickEvent} event - Custom click event.\n * @group Emits\n */\n onClick = new EventEmitter();\n /**\n * Callback to invoke when the receives focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n onFocus = new EventEmitter();\n /**\n * Callback to invoke when the loses focus.\n * @param {Event} event - Browser event.\n * @group Emits\n */\n onBlur = new EventEmitter();\n inputViewChild;\n onModelChange = () => { };\n onModelTouched = () => { };\n checked;\n focused;\n control;\n constructor(cd, injector, registry, config) {\n this.cd = cd;\n this.injector = injector;\n this.registry = registry;\n this.config = config;\n }\n ngOnInit() {\n this.control = this.injector.get(NgControl);\n this.checkName();\n this.registry.add(this.control, this);\n }\n handleClick(event, radioButton, focus) {\n if (this.disabled) {\n return;\n }\n this.select(event);\n if (focus) {\n radioButton.focus();\n }\n }\n select(event) {\n if (!this.disabled) {\n this.inputViewChild.nativeElement.checked = true;\n this.checked = true;\n this.onModelChange(this.value);\n this.registry.select(this);\n this.onClick.emit({ originalEvent: event, value: this.value });\n }\n }\n writeValue(value) {\n this.checked = value == this.value;\n if (this.inputViewChild && this.inputViewChild.nativeElement) {\n this.inputViewChild.nativeElement.checked = this.checked;\n }\n this.cd.markForCheck();\n }\n registerOnChange(fn) {\n this.onModelChange = fn;\n }\n registerOnTouched(fn) {\n this.onModelTouched = fn;\n }\n setDisabledState(val) {\n this.disabled = val;\n this.cd.markForCheck();\n }\n onInputFocus(event) {\n this.focused = true;\n this.onFocus.emit(event);\n }\n onInputBlur(event) {\n this.focused = false;\n this.onModelTouched();\n this.onBlur.emit(event);\n }\n /**\n * Applies focus to input field.\n * @group Method\n */\n focus() {\n this.inputViewChild.nativeElement.focus();\n }\n ngOnDestroy() {\n this.registry.remove(this);\n }\n checkName() {\n if (this.name && this.formControlName && this.name !== this.formControlName) {\n this.throwNameError();\n }\n if (!this.name && this.formControlName) {\n this.name = this.formControlName;\n }\n }\n throwNameError() {\n throw new Error(`\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: \n `);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: RadioControlRegistry }, { token: i1.PrimeNGConfig }], target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"16.1.0\", version: \"18.0.1\", type: RadioButton, selector: \"p-radioButton\", inputs: { value: \"value\", formControlName: \"formControlName\", name: \"name\", disabled: [\"disabled\", \"disabled\", booleanAttribute], label: \"label\", variant: \"variant\", tabindex: [\"tabindex\", \"tabindex\", numberAttribute], inputId: \"inputId\", ariaLabelledBy: \"ariaLabelledBy\", ariaLabel: \"ariaLabel\", style: \"style\", styleClass: \"styleClass\", labelStyleClass: \"labelStyleClass\", autofocus: [\"autofocus\", \"autofocus\", booleanAttribute] }, outputs: { onClick: \"onClick\", onFocus: \"onFocus\", onBlur: \"onBlur\" }, host: { classAttribute: \"p-element\" }, providers: [RADIO_VALUE_ACCESSOR], viewQueries: [{ propertyName: \"inputViewChild\", first: true, predicate: [\"input\"], descendants: true }], ngImport: i0, template: `\n \n
\n \n
\n
\n \n
\n \n {{ label }}\n `, isInline: true, dependencies: [{ kind: \"directive\", type: i2.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"directive\", type: i2.NgIf, selector: \"[ngIf]\", inputs: [\"ngIf\", \"ngIfThen\", \"ngIfElse\"] }, { kind: \"directive\", type: i2.NgStyle, selector: \"[ngStyle]\", inputs: [\"ngStyle\"] }, { kind: \"directive\", type: i3.AutoFocus, selector: \"[pAutoFocus]\", inputs: [\"autofocus\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioButton, decorators: [{\n type: Component,\n args: [{\n selector: 'p-radioButton',\n template: `\n \n
\n \n
\n
\n \n
\n \n {{ label }}\n `,\n providers: [RADIO_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'p-element'\n }\n }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.Injector }, { type: RadioControlRegistry }, { type: i1.PrimeNGConfig }], propDecorators: { value: [{\n type: Input\n }], formControlName: [{\n type: Input\n }], name: [{\n type: Input\n }], disabled: [{\n type: Input,\n args: [{ transform: booleanAttribute }]\n }], label: [{\n type: Input\n }], variant: [{\n type: Input\n }], tabindex: [{\n type: Input,\n args: [{ transform: numberAttribute }]\n }], inputId: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], style: [{\n type: Input\n }], styleClass: [{\n type: Input\n }], labelStyleClass: [{\n type: Input\n }], autofocus: [{\n type: Input,\n args: [{ transform: booleanAttribute }]\n }], onClick: [{\n type: Output\n }], onFocus: [{\n type: Output\n }], onBlur: [{\n type: Output\n }], inputViewChild: [{\n type: ViewChild,\n args: ['input']\n }] } });\nclass RadioButtonModule {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\n static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioButtonModule, declarations: [RadioButton], imports: [CommonModule, AutoFocusModule], exports: [RadioButton] });\n static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioButtonModule, imports: [CommonModule, AutoFocusModule] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"18.0.1\", ngImport: i0, type: RadioButtonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule, AutoFocusModule],\n exports: [RadioButton],\n declarations: [RadioButton]\n }]\n }] });\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { RADIO_VALUE_ACCESSOR, RadioButton, RadioButtonModule, RadioControlRegistry };\n"],"x_google_ignoreList":[4]}