UNPKG

@coreui/angular

Version:

CoreUI Components Library for Angular

50 lines 6.39 kB
import { Component, computed, input } from '@angular/core'; import { TextBgColorDirective, TextColorDirective } from '../utilities'; import * as i0 from "@angular/core"; import * as i1 from "../utilities/text-color.directive"; import * as i2 from "../utilities/text-bg-color.directive"; export class CardComponent { constructor() { /** * Sets the color context of the component to one of CoreUI’s themed colors. * @type Colors */ this.color = input(); /** * Sets the text color context of the component to one of CoreUI’s themed colors. * via TextColorDirective * @type TextColors */ this.textColor = input(); /** * Sets the component's color scheme to one of CoreUI themed colors, ensuring the text color contrast adheres to the WCAG 4.5:1 contrast ratio standard for accessibility. * via TextBgColorDirective * @type Colors * @since 5.0.0 */ this.textBgColor = input(); this.hostClasses = computed(() => { const color = this.color(); return { card: true, [`bg-${color}`]: !!color }; }); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.12", type: CardComponent, isStandalone: true, selector: "c-card, [c-card]", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, textColor: { classPropertyName: "textColor", publicName: "textColor", isSignal: true, isRequired: false, transformFunction: null }, textBgColor: { classPropertyName: "textBgColor", publicName: "textBgColor", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()" }, classAttribute: "card" }, hostDirectives: [{ directive: i1.TextColorDirective, inputs: ["cTextColor", "textColor"] }, { directive: i2.TextBgColorDirective, inputs: ["cTextBgColor", "textBgColor"] }], ngImport: i0, template: '<ng-content />', isInline: true }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CardComponent, decorators: [{ type: Component, args: [{ selector: 'c-card, [c-card]', template: '<ng-content />', standalone: true, hostDirectives: [ { directive: TextColorDirective, inputs: ['cTextColor: textColor'] }, { directive: TextBgColorDirective, inputs: ['cTextBgColor: textBgColor'] } ], host: { class: 'card', '[class]': 'hostClasses()' } }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2NhcmQvY2FyZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBRXhFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7OztBQVl4RSxNQUFNLE9BQU8sYUFBYTtJQVYxQjtRQVdFOzs7V0FHRztRQUNNLFVBQUssR0FBb0MsS0FBSyxFQUFFLENBQUM7UUFFMUQ7Ozs7V0FJRztRQUNNLGNBQVMsR0FBd0MsS0FBSyxFQUFFLENBQUM7UUFFbEU7Ozs7O1dBS0c7UUFDTSxnQkFBVyxHQUFvQyxLQUFLLEVBQUUsQ0FBQztRQUV2RCxnQkFBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDbkMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzNCLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsQ0FBQyxNQUFNLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUs7YUFDRSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0tBQ0o7K0dBN0JZLGFBQWE7bUdBQWIsYUFBYSx3dEJBUmQsZ0JBQWdCOzs0RkFRZixhQUFhO2tCQVZ6QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixjQUFjLEVBQUU7d0JBQ2QsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLENBQUMsdUJBQXVCLENBQUMsRUFBRTt3QkFDcEUsRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLENBQUMsMkJBQTJCLENBQUMsRUFBRTtxQkFDM0U7b0JBQ0QsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2lCQUNwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBJbnB1dFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29sb3JzLCBUZXh0Q29sb3JzIH0gZnJvbSAnLi4vY29yZXVpLnR5cGVzJztcbmltcG9ydCB7IFRleHRCZ0NvbG9yRGlyZWN0aXZlLCBUZXh0Q29sb3JEaXJlY3RpdmUgfSBmcm9tICcuLi91dGlsaXRpZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLWNhcmQsIFtjLWNhcmRdJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudCAvPicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgeyBkaXJlY3RpdmU6IFRleHRDb2xvckRpcmVjdGl2ZSwgaW5wdXRzOiBbJ2NUZXh0Q29sb3I6IHRleHRDb2xvciddIH0sXG4gICAgeyBkaXJlY3RpdmU6IFRleHRCZ0NvbG9yRGlyZWN0aXZlLCBpbnB1dHM6IFsnY1RleHRCZ0NvbG9yOiB0ZXh0QmdDb2xvciddIH1cbiAgXSxcbiAgaG9zdDogeyBjbGFzczogJ2NhcmQnLCAnW2NsYXNzXSc6ICdob3N0Q2xhc3NlcygpJyB9XG59KVxuZXhwb3J0IGNsYXNzIENhcmRDb21wb25lbnQge1xuICAvKipcbiAgICogU2V0cyB0aGUgY29sb3IgY29udGV4dCBvZiB0aGUgY29tcG9uZW50IHRvIG9uZSBvZiBDb3JlVUnigJlzIHRoZW1lZCBjb2xvcnMuXG4gICAqIEB0eXBlIENvbG9yc1xuICAgKi9cbiAgcmVhZG9ubHkgY29sb3I6IElucHV0U2lnbmFsPENvbG9ycyB8IHVuZGVmaW5lZD4gPSBpbnB1dCgpO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0ZXh0IGNvbG9yIGNvbnRleHQgb2YgdGhlIGNvbXBvbmVudCB0byBvbmUgb2YgQ29yZVVJ4oCZcyB0aGVtZWQgY29sb3JzLlxuICAgKiB2aWEgVGV4dENvbG9yRGlyZWN0aXZlXG4gICAqIEB0eXBlIFRleHRDb2xvcnNcbiAgICovXG4gIHJlYWRvbmx5IHRleHRDb2xvcjogSW5wdXRTaWduYWw8VGV4dENvbG9ycyB8IHVuZGVmaW5lZD4gPSBpbnB1dCgpO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb21wb25lbnQncyBjb2xvciBzY2hlbWUgdG8gb25lIG9mIENvcmVVSSB0aGVtZWQgY29sb3JzLCBlbnN1cmluZyB0aGUgdGV4dCBjb2xvciBjb250cmFzdCBhZGhlcmVzIHRvIHRoZSBXQ0FHIDQuNToxIGNvbnRyYXN0IHJhdGlvIHN0YW5kYXJkIGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiB2aWEgVGV4dEJnQ29sb3JEaXJlY3RpdmVcbiAgICogQHR5cGUgQ29sb3JzXG4gICAqIEBzaW5jZSA1LjAuMFxuICAgKi9cbiAgcmVhZG9ubHkgdGV4dEJnQ29sb3I6IElucHV0U2lnbmFsPENvbG9ycyB8IHVuZGVmaW5lZD4gPSBpbnB1dCgpO1xuXG4gIHJlYWRvbmx5IGhvc3RDbGFzc2VzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbG9yID0gdGhpcy5jb2xvcigpO1xuICAgIHJldHVybiB7XG4gICAgICBjYXJkOiB0cnVlLFxuICAgICAgW2BiZy0ke2NvbG9yfWBdOiAhIWNvbG9yXG4gICAgfSBhcyBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPjtcbiAgfSk7XG59XG4iXX0=