{"version":3,"file":"ironsource-fusion-ui-components-toggle.mjs","sources":["../../../projects/fusion-ui/components/toggle/v3/toggle.component.html","../../../projects/fusion-ui/components/toggle/v3/toggle.component.ts","../../../projects/fusion-ui/components/toggle/ironsource-fusion-ui-components-toggle.ts"],"sourcesContent":["<label>\n    <input type=\"checkbox\"\n        [id]=\"id\"\n        [checked]=\"checked$ | async\"\n        [disabled]=\"disabled$ | async\"\n        (change)=\"change($event)\"\n    />\n  <div class=\"fu-toggle-slider\"></div>\n  <div class=\"fu-toggle-content\"><ng-content></ng-content></div>\n</label>\n<div class=\"fu-error-msg\" *ngIf=\"error\">{{error}}</div>\n<div class=\"fu-helper-text\" *ngIf=\"helper\">{{helper}}</div>\n","import {ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, Input} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule} from '@angular/forms';\nimport {UniqueIdService} from '@ironsource/fusion-ui/services/unique-id';\nimport {BehaviorSubject} from 'rxjs';\n\n@Component({\n    selector: 'fusion-toggle',\n    templateUrl: './toggle.component.html',\n    styleUrls: ['./toggle.component.scss'],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    standalone: true,\n    imports: [CommonModule, FormsModule, ReactiveFormsModule],\n    providers: [\n        {\n            provide: NG_VALUE_ACCESSOR,\n            useExisting: forwardRef(() => ToggleComponent),\n            multi: true\n        }\n    ]\n})\nexport class ToggleComponent {\n    private _error: string;\n    @Input() set error(value: string) {\n        this._error = value;\n    }\n    get error(): string {\n        return this._error;\n    }\n\n    @Input() set disabled(value: boolean) {\n        this.setDisabledState(value);\n    }\n\n    private _helper: string;\n    @Input() set helper(value: string) {\n        this._helper = value;\n    }\n    get helper(): string {\n        return this._helper;\n    }\n\n    /** @internal */\n    id: string;\n    /** @internal */\n    checked$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n    /** @internal */\n    disabled$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n\n    constructor(private uniqueIdService: UniqueIdService) {\n        this.id = `fuToggle_${this.uniqueIdService.getUniqueId()}`;\n    }\n\n    /** @ignore */\n    change($event): void {\n        this.propagateTouched();\n        this.checked$.next($event.target.checked);\n        this.propagateChange(this.checked$.getValue());\n    }\n\n    // Implement ControlValueAccessor methods\n    /**\n     * Method to call when value has changes.\n     * @ignore\n     */\n    propagateChange = (_: boolean) => {};\n\n    /**\n     * Method to call when the component is touched (when it was is clicked).\n     * @ignore\n     */\n    propagateTouched = () => {};\n\n    /**\n     * update value from model to the component\n     * @ignore\n     */\n    writeValue(value: boolean): void {\n        this.checked$.next(!!value);\n    }\n\n    /**\n     * Informs the outside world about changes.\n     * see method propagateChange call - this.propagateChange(this.model);\n     * @ignore\n     */\n    registerOnChange(fn: any): void {\n        this.propagateChange = fn;\n    }\n\n    /**\n     * on click\n     * @ignore\n     */\n    registerOnTouched(fn: any): void {\n        this.propagateTouched = fn;\n    }\n\n    /**\n     * on set form controll enabled / disabled\n     * also do UI Component enabled / disabled\n     * @ignore\n     */\n    setDisabledState?(disabled: boolean): void {\n        this.disabled$.next(disabled);\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}