{"version":3,"file":"ng-vagabond-lab-ng-dsv-ds-color.mjs","sources":["../../../projects/ng-dsv/ds/color/component/base.color.component.ts","../../../projects/ng-dsv/ds/color/directive/dsv.color.directive.ts","../../../projects/ng-dsv/ds/color/ng-vagabond-lab-ng-dsv-ds-color.ts"],"sourcesContent":["import { Component, input, signal } from '@angular/core';\nimport { ButtonVariantType, ButtonWidthType, ColorType } from '@ng-vagabond-lab/ng-dsv/type';\n\n@Component({\n    selector: 'dsv-base-color',\n    imports: [],\n    template: '',\n})\nexport abstract class BaseColorComponent {\n    color = input<ColorType>('primary');\n    variant = input<ButtonVariantType>('contained');\n    width = input<ButtonWidthType>('small');\n    show = input<boolean>(true);\n    fullwidth = input<boolean>(false);\n\n    classes = signal<string>('');\n\n    setClasses(name: string, add: string[] = []) {\n        this.classes.set(this.getClasses(name, add));\n    }\n\n    getClasses(name: string, add: string[] = []) {\n        const classes = [name, this.variant(), this.color(), this.width(), ...add];\n        this.fullwidth() && classes.push('fullwidth');\n        return classes.join(' ');\n    }\n}\n","import { Directive, effect, ElementRef, inject, input, Renderer2, signal } from '@angular/core';\n\n@Directive({\n    selector: '[colorClass]',\n})\nexport class DsvColorDirective {\n    element = inject(ElementRef);\n    renderer = inject(Renderer2);\n\n    colorClass = input<string>('primary');\n\n    previousClass = signal<string | null>(null);\n\n    constructor() {\n        effect(() => {\n            const currentClass = this.colorClass() || 'primary';\n\n            this.previousClass() &&\n                this.renderer.removeClass(this.element.nativeElement, this.previousClass()!);\n\n            this.renderer.addClass(this.element.nativeElement, currentClass);\n            this.previousClass.set(currentClass);\n        });\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}