{"version":3,"file":"ironsource-fusion-ui-components-tags-input.mjs","sources":["../../../projects/fusion-ui/components/tags-input/v3/tags-input.component.html","../../../projects/fusion-ui/components/tags-input/v3/tags-input.component.ts","../../../projects/fusion-ui/components/tags-input/v3/tags-input-include-exclude/tags-input-include-exclude.component.ts","../../../projects/fusion-ui/components/tags-input/v3/tags-input-include-exclude/tags-input-include-exclude.component.html","../../../projects/fusion-ui/components/tags-input/ironsource-fusion-ui-components-tags-input.ts"],"sourcesContent":["<ng-template #apiBaseTriggerTemplate>\n    <ng-container *ngIf=\"apiBase\" [ngTemplateOutlet]=\"triggerComponent\"></ng-container>\n</ng-template>\n<ng-container *ngIf=\"!apiBase\" [ngTemplateOutlet]=\"triggerComponent\"></ng-container>\n<ng-content select=\".filter-element\"></ng-content>\n\n<ng-template #triggerComponent>\n    <div class=\"fu-tags-input-wrapper\" [class.fu-trigger]=\"apiBase\">\n        <div class=\"fu-tags-holder\">\n                <!--Tags-list-->\n                <fusion-tag *ngFor=\"let tag of (displayedTags$ | async)\"\n                            [configuration]=\"tag\"\n                            [removeEventOnly]=\"true\"\n                            [class.fu-tag-error]=\"!!tag.error\"\n                            (onRemove)=\"tagRemoved($event)\"\n                ></fusion-tag>\n                <!--Tags-list-->\n\n            <ng-container *ngIf=\"!apiBase\">\n                <!--Input new tag and search in existed-->\n                <div class=\"input-container\" >\n                    <fusion-input #tagInput\n                                  [placeholder]=\"inputPlaceholder\"\n                                  (ngEnter)=\"enterNewTag($event)\"\n                                  [options]=\"inputOptions\"\n                    ></fusion-input>\n                </div>\n                <!--Input new tag and search in existed-->\n            </ng-container>\n\n            <ng-container *ngIf=\"apiBase\">\n                <!--dropdown (include-exclude, multiselect)-->\n                <div *ngIf=\"placeholder\" class=\"fu-tags-input-placeholder\">{{placeholder}}</div>\n                <!--<ng-content select=\".filter-element\"></ng-content>-->\n                <!--dropdown (include-exclude, multiselect)-->\n            </ng-container>\n\n        </div>\n    </div>\n</ng-template>\n\n<div class=\"fu-error-msg\"\n     *ngIf=\"error\"\n     [innerHTML]=\"error\">\n</div>\n<div class=\"fu-helper-text\"\n     *ngIf=\"helper\"\n     [hidden]=\"!!error\"\n     [innerHTML]=\"helper\">\n</div>\n","import {\n    ChangeDetectionStrategy,\n    Component,\n    ContentChild,\n    EventEmitter,\n    Input,\n    OnDestroy,\n    OnInit,\n    Output,\n    TemplateRef,\n    ViewChild\n} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {InputComponent, InputModule, InputOptions, InputSize} from '@ironsource/fusion-ui/components/input/v3';\nimport {TagComponent, TagComponentConfigurations} from '@ironsource/fusion-ui/components/tag';\nimport {BehaviorSubject, Subject} from 'rxjs';\nimport {ApiBase} from '@ironsource/fusion-ui/components/api-base';\n\n@Component({\n    selector: 'fusion-tags-input',\n    standalone: true,\n    imports: [CommonModule, InputModule, TagComponent],\n    templateUrl: './tags-input.component.html',\n    styleUrls: ['./tags-input.component.scss'],\n    changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TagsInputComponent implements OnInit, OnDestroy {\n    /** Placeholder for input used for add new tag */\n    @Input() inputPlaceholder = '...';\n    /** Placeholder for using with drop-down */\n    @Input() placeholder: string;\n\n    /** Tags */\n    @Input() set tags(value: TagComponentConfigurations[]) {\n        if (Array.isArray(value)) {\n            this.displayedTags$.next(value);\n        }\n    }\n\n    /** Error message */\n    @Input() error: string;\n    /** Helper message */\n    @Input() helper: string;\n\n    /** On add new tag */\n    @Output() addNewTag = new EventEmitter<string>();\n\n    /** On tag removed*/\n    @Output() removeTag = new EventEmitter<TagComponentConfigurations>();\n\n    /** @internal */\n    @ContentChild(ApiBase, {static: true}) apiBase: ApiBase;\n    /** @internal */\n    @ViewChild('apiBaseTriggerTemplate', {static: true}) apiBaseTriggerTemplate: TemplateRef<any>;\n    /** @internal */\n    @ViewChild('tagInput') private tagInput: InputComponent;\n\n    /** @internal */\n    inputOptions: InputOptions = {size: InputSize.Small};\n    /** @ignore */\n    displayedTags$ = new BehaviorSubject<TagComponentConfigurations[]>([]);\n\n    private onDestroy$ = new Subject();\n    constructor() {}\n\n    ngOnInit(): void {\n        if (this.apiBase) {\n            this.apiBase.templateRef = this.apiBaseTriggerTemplate;\n            this.apiBase.selectedTypeObject = true;\n        }\n    }\n\n    ngOnDestroy(): void {\n        this.onDestroy$.next();\n        this.onDestroy$.complete();\n    }\n\n    /** @internal */\n    enterNewTag(newTag: string) {\n        newTag = newTag.trim();\n        if (newTag) {\n            this.addNewTag.emit(newTag);\n        }\n        this.tagInput.clearInput();\n    }\n\n    /** @internal */\n    tagRemoved(tagRemoved: TagComponentConfigurations) {\n        this.removeTag.emit(tagRemoved);\n    }\n}\n","import {ChangeDetectionStrategy, Component, forwardRef, Input, OnDestroy, OnInit} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {FormControl, NG_VALUE_ACCESSOR, ReactiveFormsModule} from '@angular/forms';\nimport {Subject} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\nimport {DropdownDualMultiSelectModule} from '@ironsource/fusion-ui/components/dropdown-dual-multi-select/v3';\nimport {TagComponentConfigurations} from '@ironsource/fusion-ui/components/tag';\nimport {DropdownOption} from '@ironsource/fusion-ui/components/dropdown-option';\nimport {TagsInputComponent} from '../tags-input.component';\n\n/**\n * Combined component Tags-Input with Dropdown-Include-Exclude\n */\n@Component({\n    selector: 'fusion-tags-input-include-exclude',\n    standalone: true,\n    imports: [CommonModule, ReactiveFormsModule, TagsInputComponent, DropdownDualMultiSelectModule],\n    templateUrl: './tags-input-include-exclude.component.html',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    providers: [\n        {\n            provide: NG_VALUE_ACCESSOR,\n            useExisting: forwardRef(() => TagsInputIncludeExcludeComponent),\n            multi: true\n        }\n    ]\n})\nexport class TagsInputIncludeExcludeComponent implements OnInit, OnDestroy {\n    @Input() set placeholder(value: string) {\n        this.initPlaceholder = value;\n        this.tagInputPlaceholder = this.initPlaceholder;\n    }\n\n    @Input() error: string;\n    @Input() helper: string;\n\n    @Input() title: string;\n    @Input() items: DropdownOption[] = [];\n\n    /** @internal */\n    formControlIncludeExclude = new FormControl<DropdownOption[]>([]);\n    /** @internal */\n    tagInputPlaceholder: string;\n    /** @internal */\n    tags: TagComponentConfigurations[] = [];\n\n    private initPlaceholder: string;\n\n    private onDestroy$ = new Subject<void>();\n\n    constructor() {}\n\n    ngOnInit(): void {\n        this.formControlIncludeExclude.valueChanges.pipe(takeUntil(this.onDestroy$)).subscribe(this.setTags.bind(this));\n    }\n\n    ngOnDestroy(): void {\n        this.onDestroy$.next();\n        this.onDestroy$.complete();\n    }\n\n    // region Implement ControlValueAccessor methods\n    /** @internal */\n    propagateChange = (_: DropdownOption[]) => {};\n\n    /** @internal */\n    propagateTouched = () => {};\n\n    /** @internal */\n    writeValue(value: DropdownOption[]): void {\n        if (!Array.isArray(value)) {\n            value = [];\n        }\n        this.formControlIncludeExclude.setValue(value, {emitEvent: false});\n        this.setTags(this.formControlIncludeExclude.value, false);\n    }\n\n    /** @internal */\n    registerOnChange(fn: any): void {\n        this.propagateChange = fn;\n    }\n\n    /** @internal */\n    registerOnTouched(fn: any): void {\n        this.propagateTouched = fn;\n    }\n\n    // endregion\n\n    private setTags(selected: DropdownOption[], propagateChange = true) {\n        if (Array.isArray(selected) && selected.length) {\n            if (selected.length === this.items.length) {\n                this.tags = [];\n                this.tagInputPlaceholder = 'All selected';\n            } else {\n                this.tagInputPlaceholder = '';\n                this.tags = selected.map((option: DropdownOption) => ({\n                    id: option.id,\n                    title: option.title ?? option.displayText,\n                    image: option.image,\n                    icon: option.icon,\n                    flag: option.flag\n                }));\n            }\n        } else {\n            this.tagInputPlaceholder = this.initPlaceholder;\n            this.tags = [];\n            selected = [];\n        }\n        if (propagateChange) {\n            this.propagateChange(selected);\n        }\n    }\n}\n","<fusion-tags-input\n    [placeholder]=\"tagInputPlaceholder\"\n    [tags]=\"tags\"\n    [error]=\"error\"\n    [helper]=\"helper\"\n>\n    <div class=\"filter-element\">\n        <fusion-dropdown-dual-multi-select\n            [title]=\"title\"\n            [formControl]=\"formControlIncludeExclude\"\n            [items]=\"items\"\n        ></fusion-dropdown-dual-multi-select>\n    </div>\n</fusion-tags-input>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2"],"mappings":"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"}