{"version":3,"file":"sowatech-shared-buttons.mjs","sources":["../../../projects/shared/buttons/button-base.directive.ts","../../../projects/shared/buttons/button-add.component.ts","../../../projects/shared/buttons/button.component.html","../../../projects/shared/buttons/button-confirm.directive.ts","../../../projects/shared/buttons/button-create.component.ts","../../../projects/shared/buttons/button-custom.component.ts","../../../projects/shared/buttons/button-delete.component.ts","../../../projects/shared/buttons/button-edit.component.ts","../../../projects/shared/buttons/button-remove.component.ts","../../../projects/shared/buttons/buttons.module.ts","../../../projects/shared/buttons/sowatech-shared-buttons.ts"],"sourcesContent":["/* eslint-disable @angular-eslint/no-input-rename */\r\nimport { booleanAttribute, computed, Directive, inject, input, signal } from '@angular/core';\r\nimport { SharedConfigService } from '@sowatech/shared/shared-config';\r\n\r\nexport type FaType = 'fa' | 'fas' | 'far' | 'fal' | 'fad' | 'fab';\r\n\r\n@Directive({\r\n    host: { '[class]': 'computedClass()' }, // host binding geht nur so mit signals\r\n})\r\nexport abstract class ButtonBaseDirective {\r\n    private readonly config = inject(SharedConfigService);\r\n\r\n    public readonly icon = input<string>();\r\n    public readonly btnClass = input<string>(undefined, { alias: 'btn-class' });\r\n    public readonly faType = input<FaType>('fa', { alias: 'fa-type' });\r\n    public readonly disableMargin = input(false, { transform: booleanAttribute });\r\n\r\n    protected readonly defaultIcon = signal('');\r\n    protected readonly defaultBtnClass = signal('');\r\n\r\n    private readonly marginClass = computed(() => !this.disableMargin() ? this.config.decideByTemplate({ inspinia: 'm-r-xs', sneat: 'me-1' }) : '');\r\n\r\n    protected readonly computedClass = computed(() => `btn btn-${this.btnClass() ?? this.defaultBtnClass()} ${this.config.btnSize} ${this.marginClass()}`);\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ButtonBaseDirective } from './button-base.directive';\r\n\r\n@Component({\r\n    selector: 'button[button-add]',\r\n    templateUrl: './button.component.html',\r\n    styleUrls: ['button-directive.styles.scss'],\r\n    standalone: false\r\n})\r\nexport class ButtonAddComponent extends ButtonBaseDirective {\r\n    constructor() {\r\n        super();\r\n        this.defaultIcon.set('plus');\r\n        this.defaultBtnClass.set('default');\r\n    }\r\n}\r\n","@if (icon() ?? defaultIcon()) {\r\n  <i class=\"{{ faType() }} fa-{{ icon() ?? defaultIcon() }}\"></i>\r\n}\r\n<span class=\"button-content\"><ng-content></ng-content></span>\r\n","import { Directive, ElementRef, inject, input, OnInit } from '@angular/core';\r\nimport { MessageBoxService } from '@sowatech/shared/dialogs';\r\nimport { LoggerService } from '@sowatech/shared/logger';\r\nimport { I18nService } from '@sowatech/shared/utilities';\r\n\r\nimport { ButtonBaseDirective } from './button-base.directive';\r\n\r\nconst CLASS = 'ButtonConfirmDirective';\r\n\r\n@Directive()\r\nexport abstract class ButtonConfirmDirective extends ButtonBaseDirective implements OnInit {\r\n    private readonly i18nService = inject(I18nService);\r\n    private readonly messageBoxService = inject(MessageBoxService);\r\n    private readonly el = inject(ElementRef<HTMLButtonElement>);\r\n    private readonly logger = inject(LoggerService);\r\n\r\n    public readonly designation = input(''); // z.B. Person\r\n    public readonly name = input(''); // z.B. Chris König\r\n    public readonly confirmationText = input<string>(); // (mit i18n) z.B. Möchten Sie die Person wirklich löschen?\r\n    public readonly confirmationTitle = input<string>();\r\n    public readonly confirmDialog = input(true);\r\n\r\n    protected defaultText_designationAndName: string;\r\n    protected defaultText_designation: string;\r\n    protected defaultText_name: string;\r\n    protected defaultText_title: string;\r\n\r\n    private nativeClickListeners: EventListener[] = [];\r\n\r\n    ngOnInit(): void {\r\n        for (const listener of (this.el.nativeElement as any).eventListeners()) {\r\n            this.nativeClickListeners.push(listener as EventListener);\r\n            this.el.nativeElement.removeEventListener('click', listener);\r\n        }\r\n        this.el.nativeElement.addEventListener('click', event => this.doClick(event));\r\n    }\r\n\r\n    private async doClick(e: MouseEvent) {\r\n        const confirmed = await this.showConfirmDialog();\r\n        if (confirmed)\r\n            this.nativeClickListeners.forEach(listener => listener(e));\r\n    }\r\n\r\n    public async showConfirmDialog() {\r\n        if (!this.confirmDialog()) return true;\r\n        const text = this.getText();\r\n        if (text == null) {\r\n            this.logger.error(CLASS + ' needs a confirmationText, a name or a designation');\r\n            return false;\r\n        }\r\n        await this.messageBoxService.confirmDialog(text, this.confirmationTitle() ?? this.defaultText_title);\r\n        return true;\r\n    }\r\n\r\n    private getText() {\r\n        if (this.confirmationText())\r\n            return this.confirmationText();\r\n        if (this.name() && this.designation())\r\n            return this.i18nService.replace(this.defaultText_designationAndName, [this.designation(), this.name()]);\r\n        else if (this.name())\r\n            return this.i18nService.replace(this.defaultText_name, [this.name()]);\r\n        else if (this.designation())\r\n            return this.i18nService.replace(this.defaultText_designation, [this.designation()]);\r\n        return null;\r\n    }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ButtonBaseDirective } from './button-base.directive';\r\n\r\n@Component({\r\n    selector: 'button[button-create]',\r\n    templateUrl: './button.component.html',\r\n    styleUrls: ['button-directive.styles.scss'],\r\n    standalone: false\r\n})\r\nexport class ButtonCreateComponent extends ButtonBaseDirective {\r\n    constructor() {\r\n        super();\r\n        this.defaultIcon.set('plus');\r\n        this.defaultBtnClass.set('primary');\r\n    }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ButtonBaseDirective } from './button-base.directive';\r\n\r\n@Component({\r\n    selector: 'button[button-custom]',\r\n    templateUrl: './button.component.html',\r\n    styleUrls: ['button-directive.styles.scss'],\r\n    standalone: false\r\n})\r\nexport class ButtonCustomComponent extends ButtonBaseDirective {\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ButtonConfirmDirective } from './button-confirm.directive';\r\n\r\n@Component({\r\n    selector: 'button[button-delete]',\r\n    templateUrl: './button.component.html',\r\n    styleUrls: ['button-directive.styles.scss'],\r\n    standalone: false\r\n})\r\nexport class ButtonDeleteComponent extends ButtonConfirmDirective {\r\n    constructor() {\r\n        super();\r\n        this.defaultIcon.set('trash');\r\n        this.defaultBtnClass.set('danger');\r\n        this.defaultText_title = $localize`:@@DeleteButton.act.Label:Löschen`;\r\n        this.defaultText_designationAndName = $localize`:@@DeleteButton.confirmDialog.designationAndName.dsp.Text:$0 '$1' löschen?`;\r\n        this.defaultText_designation = $localize`:@@DeleteButton.confirmDialog.designation.dsp.Text:$0 löschen?`;\r\n        this.defaultText_name = $localize`:@@DeleteButton.confirmDialog.name.dsp.Text:'$0' löschen?`;\r\n    }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ButtonBaseDirective } from './button-base.directive';\r\n\r\n@Component({\r\n    selector: 'button[button-edit]',\r\n    templateUrl: './button.component.html',\r\n    styleUrls: ['button-directive.styles.scss'],\r\n    standalone: false\r\n})\r\nexport class ButtonEditComponent extends ButtonBaseDirective {\r\n    constructor() {\r\n        super();\r\n        this.defaultIcon.set('edit');\r\n        this.defaultBtnClass.set('default');\r\n    }\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\nimport { ButtonConfirmDirective } from './button-confirm.directive';\r\n\r\n@Component({\r\n    selector: 'button[button-remove]',\r\n    templateUrl: './button.component.html',\r\n    styleUrls: ['button-directive.styles.scss'],\r\n    standalone: false\r\n})\r\nexport class ButtonRemoveComponent extends ButtonConfirmDirective {\r\n    constructor() {\r\n        super();\r\n        this.defaultIcon.set('unlink');\r\n        this.defaultBtnClass.set('danger');\r\n        this.defaultText_title = $localize`:@@RemoveButton.act.Label:Entfernen`;\r\n        this.defaultText_designationAndName = $localize`:@@RemoveButton.confirmDialog.designationAndName.dsp.Text:$0 '$1' entfernen?`;\r\n        this.defaultText_designation = $localize`:@@RemoveButton.confirmDialog.designation.dsp.Text:$0 entfernen?`;\r\n        this.defaultText_name = $localize`:@@RemoveButton.confirmDialog.name.dsp.Text:'$0' entfernen?`;\r\n    }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\n\r\nimport { ButtonAddComponent } from './button-add.component';\r\nimport { ButtonCreateComponent } from './button-create.component';\r\nimport { ButtonCustomComponent } from './button-custom.component';\r\nimport { ButtonDeleteComponent } from './button-delete.component';\r\nimport { ButtonEditComponent } from './button-edit.component';\r\nimport { ButtonRemoveComponent } from './button-remove.component';\r\n\r\n@NgModule({\r\n    imports: [\r\n        CommonModule,\r\n    ],\r\n    exports: [\r\n        ButtonAddComponent,\r\n        ButtonCreateComponent,\r\n        ButtonCustomComponent,\r\n        ButtonDeleteComponent,\r\n        ButtonEditComponent,\r\n        ButtonRemoveComponent,\r\n    ],\r\n    declarations: [\r\n        ButtonAddComponent,\r\n        ButtonCreateComponent,\r\n        ButtonCustomComponent,\r\n        ButtonDeleteComponent,\r\n        ButtonEditComponent,\r\n        ButtonRemoveComponent,\r\n    ],\r\n    providers: [],\r\n})\r\nexport class ButtonsModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}