UNPKG

@coreui/angular

Version:

CoreUI Components Library for Angular

32 lines 4.33 kB
import { computed, Directive, input } from '@angular/core'; import * as i0 from "@angular/core"; export class CardImgDirective { constructor() { /** * Optionally orientate the image to the top, bottom, or make it overlaid across the card. * @type {'top | 'bottom'} */ this.orientation = input(undefined, { alias: 'cCardImg' }); this.hostClasses = computed(() => { const orientation = this.orientation(); const suffix = !!orientation ? `-${orientation}` : ''; const horizontal = ['start', 'end'].includes(orientation ?? '-') ? orientation : undefined; return { [`card-img${suffix}`]: !horizontal, 'img-fluid': !!horizontal, [`rounded-${horizontal}`]: !!horizontal }; }); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CardImgDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.12", type: CardImgDirective, isStandalone: true, selector: "[cCardImg]", inputs: { orientation: { classPropertyName: "orientation", publicName: "cCardImg", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "hostClasses()" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CardImgDirective, decorators: [{ type: Directive, args: [{ selector: '[cCardImg]', standalone: true, host: { '[class]': 'hostClasses()' } }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1pbWcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9jYXJkL2NhcmQtaW1nLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzNELE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFNRTs7O1dBR0c7UUFDTSxnQkFBVyxHQUFHLEtBQUssQ0FBaUQsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFFdEcsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ25DLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2QyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdEQsTUFBTSxVQUFVLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDM0YsT0FBTztnQkFDTCxDQUFDLFdBQVcsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVU7Z0JBQ2xDLFdBQVcsRUFBRSxDQUFDLENBQUMsVUFBVTtnQkFDekIsQ0FBQyxXQUFXLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFVBQVU7YUFDYixDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUFDO0tBQ0o7K0dBakJZLGdCQUFnQjttR0FBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUw1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRTtpQkFDckMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb21wdXRlZCwgRGlyZWN0aXZlLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY0NhcmRJbWddJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDogeyAnW2NsYXNzXSc6ICdob3N0Q2xhc3NlcygpJyB9XG59KVxuZXhwb3J0IGNsYXNzIENhcmRJbWdEaXJlY3RpdmUge1xuICAvKipcbiAgICogT3B0aW9uYWxseSBvcmllbnRhdGUgdGhlIGltYWdlIHRvIHRoZSB0b3AsIGJvdHRvbSwgb3IgbWFrZSBpdCBvdmVybGFpZCBhY3Jvc3MgdGhlIGNhcmQuXG4gICAqIEB0eXBlIHsndG9wIHwgJ2JvdHRvbSd9XG4gICAqL1xuICByZWFkb25seSBvcmllbnRhdGlvbiA9IGlucHV0PCd0b3AnIHwgJ2JvdHRvbScgfCAnc3RhcnQnIHwgJ2VuZCcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCwgeyBhbGlhczogJ2NDYXJkSW1nJyB9KTtcblxuICByZWFkb25seSBob3N0Q2xhc3NlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBvcmllbnRhdGlvbiA9IHRoaXMub3JpZW50YXRpb24oKTtcbiAgICBjb25zdCBzdWZmaXggPSAhIW9yaWVudGF0aW9uID8gYC0ke29yaWVudGF0aW9ufWAgOiAnJztcbiAgICBjb25zdCBob3Jpem9udGFsID0gWydzdGFydCcsICdlbmQnXS5pbmNsdWRlcyhvcmllbnRhdGlvbiA/PyAnLScpID8gb3JpZW50YXRpb24gOiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIHtcbiAgICAgIFtgY2FyZC1pbWcke3N1ZmZpeH1gXTogIWhvcml6b250YWwsXG4gICAgICAnaW1nLWZsdWlkJzogISFob3Jpem9udGFsLFxuICAgICAgW2Byb3VuZGVkLSR7aG9yaXpvbnRhbH1gXTogISFob3Jpem9udGFsXG4gICAgfSBhcyBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPjtcbiAgfSk7XG59XG4iXX0=