{"version":3,"file":"finastra-angular-components-filter-filter-toggle.mjs","sources":["../tmp-esm2022/filter/filter-toggle/src/filter-toggle.component.js","../tmp-esm2022/filter/filter-toggle/finastra-angular-components-filter-filter-toggle.js"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatIconModule } from '@angular/material/icon';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/material/button-toggle\";\nimport * as i2 from \"@angular/material/icon\";\nexport class FilterToggleComponent {\n    set data(data) {\n        this._data = data;\n    }\n    get data() {\n        return this._data;\n    }\n    constructor(hostElement) {\n        this.hostElement = hostElement;\n        this._data = [];\n        this.showIcon = true;\n        this.showLabel = true;\n        this.dense = false;\n        this.uxgClass = '';\n        this.changes = new EventEmitter();\n        this.hostElement.nativeElement.__component = this;\n    }\n    ngOnInit() {\n        this.data.forEach((toggleBtn) => {\n            if (toggleBtn.isSelected) {\n                this.initialValue = toggleBtn;\n                this.selectedValue = toggleBtn;\n                this.previousValue = toggleBtn;\n            }\n        });\n    }\n    onValueChange(val) {\n        this.selectedValue = val;\n        this.changes.emit({ added: [val], removed: [this.previousValue] });\n        this.previousValue = val;\n    }\n    clearSelection() {\n        this.selectedValue = undefined;\n        this.changes.emit({ added: [], removed: [this.previousValue] });\n    }\n    reset() {\n        if (this.initialValue) {\n            this.selectedValue = this.initialValue;\n            this.changes.emit({ added: [this.initialValue], removed: [this.previousValue] });\n        }\n    }\n    getState() {\n        return this.selectedValue ? [this.selectedValue] : [];\n    }\n    setState(value) {\n        if (value.length) {\n            this.selectedValue = value[0];\n        }\n    }\n    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: FilterToggleComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }\n    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.4\", type: FilterToggleComponent, isStandalone: true, selector: \"uxg-filter-toggle\", inputs: { data: \"data\", showIcon: \"showIcon\", showLabel: \"showLabel\", dense: \"dense\", uxgClass: \"uxgClass\" }, outputs: { changes: \"changes\" }, ngImport: i0, template: \"<mat-button-toggle-group\\n  #group=\\\"matButtonToggleGroup\\\"\\n  [value]=\\\"selectedValue\\\"\\n  (change)=\\\"onValueChange(group.value)\\\"\\n  [attr.dense]=\\\"dense || null\\\"\\n  [ngClass]=\\\"uxgClass\\\"\\n>\\n  @for (item of data; track item.label) {\\n    <mat-button-toggle [value]=\\\"item\\\">\\n      @if (item.matIcon && showIcon) {\\n        <mat-icon fontSet=\\\"material-icons-outlined\\\">{{ item.matIcon }}</mat-icon>\\n      }\\n      @if (showLabel) {\\n        <span>{{ item.label }}</span>\\n      }\\n    </mat-button-toggle>\\n  }\\n</mat-button-toggle-group>\\n\", styles: [\":host{width:100%}:host .mat-button-toggle-group{width:100%}\\n\"], dependencies: [{ kind: \"ngmodule\", type: MatButtonToggleModule }, { kind: \"directive\", type: i1.MatButtonToggleGroup, selector: \"mat-button-toggle-group\", inputs: [\"appearance\", \"name\", \"vertical\", \"value\", \"multiple\", \"disabled\", \"disabledInteractive\", \"hideSingleSelectionIndicator\", \"hideMultipleSelectionIndicator\"], outputs: [\"valueChange\", \"change\"], exportAs: [\"matButtonToggleGroup\"] }, { kind: \"component\", type: i1.MatButtonToggle, selector: \"mat-button-toggle\", inputs: [\"aria-label\", \"aria-labelledby\", \"id\", \"name\", \"value\", \"tabIndex\", \"disableRipple\", \"appearance\", \"checked\", \"disabled\", \"disabledInteractive\"], outputs: [\"change\"], exportAs: [\"matButtonToggle\"] }, { kind: \"directive\", type: NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"ngmodule\", type: MatIconModule }, { kind: \"component\", type: i2.MatIcon, selector: \"mat-icon\", inputs: [\"color\", \"inline\", \"svgIcon\", \"fontSet\", \"fontIcon\"], exportAs: [\"matIcon\"] }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: FilterToggleComponent, decorators: [{\n            type: Component,\n            args: [{ selector: 'uxg-filter-toggle', standalone: true, imports: [MatButtonToggleModule, NgClass, MatIconModule], template: \"<mat-button-toggle-group\\n  #group=\\\"matButtonToggleGroup\\\"\\n  [value]=\\\"selectedValue\\\"\\n  (change)=\\\"onValueChange(group.value)\\\"\\n  [attr.dense]=\\\"dense || null\\\"\\n  [ngClass]=\\\"uxgClass\\\"\\n>\\n  @for (item of data; track item.label) {\\n    <mat-button-toggle [value]=\\\"item\\\">\\n      @if (item.matIcon && showIcon) {\\n        <mat-icon fontSet=\\\"material-icons-outlined\\\">{{ item.matIcon }}</mat-icon>\\n      }\\n      @if (showLabel) {\\n        <span>{{ item.label }}</span>\\n      }\\n    </mat-button-toggle>\\n  }\\n</mat-button-toggle-group>\\n\", styles: [\":host{width:100%}:host .mat-button-toggle-group{width:100%}\\n\"] }]\n        }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { data: [{\n                type: Input\n            }], showIcon: [{\n                type: Input\n            }], showLabel: [{\n                type: Input\n            }], dense: [{\n                type: Input\n            }], uxgClass: [{\n                type: Input\n            }], changes: [{\n                type: Output\n            }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItY29tcG9uZW50cy9maWx0ZXIvZmlsdGVyLXRvZ2dsZS9zcmMvZmlsdGVyLXRvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItY29tcG9uZW50cy9maWx0ZXIvZmlsdGVyLXRvZ2dsZS9zcmMvZmlsdGVyLXRvZ2dsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFxQnZELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsSUFDSSxJQUFJLENBQUMsSUFBaUI7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBUUQsWUFBb0IsV0FBdUI7UUFBdkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFqQm5DLFVBQUssR0FBZ0IsRUFBRSxDQUFDO1FBVXZCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDaEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixVQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ2QsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUViLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUd2RCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQ3BELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUM5QixJQUFJLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDekIsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDO2dCQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQztZQUNqQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsYUFBYSxDQUFDLEdBQWM7UUFDMUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUM7UUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDO0lBQzNCLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUM7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuRixDQUFDO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFrQjtRQUN6QixJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxDQUFDO0lBQ0gsQ0FBQzs4R0E3RFUscUJBQXFCO2tHQUFyQixxQkFBcUIsNE5DeEJsQyxxaUJBa0JBLHNIRElZLHFCQUFxQix1b0JBQUUsT0FBTyxtRkFBRSxhQUFhOzsyRkFFNUMscUJBQXFCO2tCQVBqQyxTQUFTOytCQUNFLG1CQUFtQixjQUdqQixJQUFJLFdBQ1AsQ0FBQyxxQkFBcUIsRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDOytFQVNwRCxJQUFJO3NCQURQLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRvZ2dsZUJ0biB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIG1hdEljb24/OiBzdHJpbmc7XG4gIGlzU2VsZWN0ZWQ/OiBib29sZWFuO1xufVxuXG5pbnRlcmZhY2UgVVhHRmlsdGVyQ2hhbmdlcyB7XG4gIGFkZGVkOiBUb2dnbGVCdG5bXTtcbiAgcmVtb3ZlZDogVG9nZ2xlQnRuW107XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3V4Zy1maWx0ZXItdG9nZ2xlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlci10b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWx0ZXItdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtNYXRCdXR0b25Ub2dnbGVNb2R1bGUsIE5nQ2xhc3MsIE1hdEljb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlclRvZ2dsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNlbGVjdGVkVmFsdWU6IFRvZ2dsZUJ0biB8IHVuZGVmaW5lZDtcbiAgaW5pdGlhbFZhbHVlITogVG9nZ2xlQnRuO1xuICBwcmV2aW91c1ZhbHVlITogVG9nZ2xlQnRuO1xuICBwcml2YXRlIF9kYXRhOiBUb2dnbGVCdG5bXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBkYXRhKGRhdGE6IFRvZ2dsZUJ0bltdKSB7XG4gICAgdGhpcy5fZGF0YSA9IGRhdGE7XG4gIH1cblxuICBnZXQgZGF0YSgpOiBUb2dnbGVCdG5bXSB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGE7XG4gIH1cbiAgQElucHV0KCkgc2hvd0ljb24gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93TGFiZWwgPSB0cnVlO1xuICBASW5wdXQoKSBkZW5zZSA9IGZhbHNlO1xuICBASW5wdXQoKSB1eGdDbGFzcyA9ICcnO1xuXG4gIEBPdXRwdXQoKSBjaGFuZ2VzID0gbmV3IEV2ZW50RW1pdHRlcjxVWEdGaWx0ZXJDaGFuZ2VzPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuX19jb21wb25lbnQgPSB0aGlzO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5kYXRhLmZvckVhY2goKHRvZ2dsZUJ0bikgPT4ge1xuICAgICAgaWYgKHRvZ2dsZUJ0bi5pc1NlbGVjdGVkKSB7XG4gICAgICAgIHRoaXMuaW5pdGlhbFZhbHVlID0gdG9nZ2xlQnRuO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB0b2dnbGVCdG47XG4gICAgICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IHRvZ2dsZUJ0bjtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9uVmFsdWVDaGFuZ2UodmFsOiBUb2dnbGVCdG4pIHtcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB2YWw7XG4gICAgdGhpcy5jaGFuZ2VzLmVtaXQoeyBhZGRlZDogW3ZhbF0sIHJlbW92ZWQ6IFt0aGlzLnByZXZpb3VzVmFsdWVdIH0pO1xuICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IHZhbDtcbiAgfVxuXG4gIGNsZWFyU2VsZWN0aW9uKCkge1xuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmNoYW5nZXMuZW1pdCh7IGFkZGVkOiBbXSwgcmVtb3ZlZDogW3RoaXMucHJldmlvdXNWYWx1ZV0gfSk7XG4gIH1cblxuICByZXNldCgpIHtcbiAgICBpZiAodGhpcy5pbml0aWFsVmFsdWUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IHRoaXMuaW5pdGlhbFZhbHVlO1xuICAgICAgdGhpcy5jaGFuZ2VzLmVtaXQoeyBhZGRlZDogW3RoaXMuaW5pdGlhbFZhbHVlXSwgcmVtb3ZlZDogW3RoaXMucHJldmlvdXNWYWx1ZV0gfSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0U3RhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRWYWx1ZSA/IFt0aGlzLnNlbGVjdGVkVmFsdWVdIDogW107XG4gIH1cblxuICBzZXRTdGF0ZSh2YWx1ZTogVG9nZ2xlQnRuW10pIHtcbiAgICBpZiAodmFsdWUubGVuZ3RoKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB2YWx1ZVswXTtcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cFxuICAjZ3JvdXA9XCJtYXRCdXR0b25Ub2dnbGVHcm91cFwiXG4gIFt2YWx1ZV09XCJzZWxlY3RlZFZhbHVlXCJcbiAgKGNoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKGdyb3VwLnZhbHVlKVwiXG4gIFthdHRyLmRlbnNlXT1cImRlbnNlIHx8IG51bGxcIlxuICBbbmdDbGFzc109XCJ1eGdDbGFzc1wiXG4+XG4gIEBmb3IgKGl0ZW0gb2YgZGF0YTsgdHJhY2sgaXRlbS5sYWJlbCkge1xuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZSBbdmFsdWVdPVwiaXRlbVwiPlxuICAgICAgQGlmIChpdGVtLm1hdEljb24gJiYgc2hvd0ljb24pIHtcbiAgICAgICAgPG1hdC1pY29uIGZvbnRTZXQ9XCJtYXRlcmlhbC1pY29ucy1vdXRsaW5lZFwiPnt7IGl0ZW0ubWF0SWNvbiB9fTwvbWF0LWljb24+XG4gICAgICB9XG4gICAgICBAaWYgKHNob3dMYWJlbCkge1xuICAgICAgICA8c3Bhbj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxuICAgICAgfVxuICAgIDwvbWF0LWJ1dHRvbi10b2dnbGU+XG4gIH1cbjwvbWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXA+XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluYXN0cmEtYW5ndWxhci1jb21wb25lbnRzLWZpbHRlci1maWx0ZXItdG9nZ2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbXBvbmVudHMvZmlsdGVyL2ZpbHRlci10b2dnbGUvZmluYXN0cmEtYW5ndWxhci1jb21wb25lbnRzLWZpbHRlci1maWx0ZXItdG9nZ2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}