import * as i1 from '@angular/common';
import { CommonModule } from '@angular/common';
import * as i0 from '@angular/core';
import { input, booleanAttribute, contentChild, Component } from '@angular/core';

class Card {
    class = input('', ...(ngDevMode ? [{ debugName: "class" }] : []));
    title = input('', ...(ngDevMode ? [{ debugName: "title" }] : []));
    paddingless = input(false, { ...(ngDevMode ? { debugName: "paddingless" } : {}), transform: booleanAttribute });
    // Content child to get the headless template
    headless = contentChild('headless', ...(ngDevMode ? [{ debugName: "headless" }] : []));
    cardEnd = contentChild('cardEnd', ...(ngDevMode ? [{ debugName: "cardEnd" }] : []));
    static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: Card, deps: [], target: i0.ɵɵFactoryTarget.Component });
    static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: Card, isStandalone: true, selector: "mt-card", inputs: { class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, paddingless: { classPropertyName: "paddingless", publicName: "paddingless", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "block bg-content rounded-2xl border-1 border-surface" }, queries: [{ propertyName: "headless", first: true, predicate: ["headless"], descendants: true, isSignal: true }, { propertyName: "cardEnd", first: true, predicate: ["cardEnd"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"size-full flex flex-col\">\r\n  @if (headless()) {\r\n    <!-- Custom headless template -->\r\n    <ng-container [ngTemplateOutlet]=\"headless()\"></ng-container>\r\n  } @else {\r\n    @if (title() || cardEnd()) {\r\n      <!-- Default header with dynamic title -->\r\n      <div\r\n        class=\"flex items-center justify-between px-4 py-5 border-b border-surface\"\r\n      >\r\n        @if (title()) {\r\n          <h3 class=\"text-xl font-semibold\">{{ title() }}</h3>\r\n        }\r\n        @if (cardEnd()) {\r\n          <div class=\"flex\">\r\n            <ng-container [ngTemplateOutlet]=\"cardEnd()\"></ng-container>\r\n          </div>\r\n        }\r\n      </div>\r\n    }\r\n\r\n    <div class=\"flex-1\" [class.p-4]=\"!paddingless()\">\r\n      <ng-content></ng-content>\r\n    </div>\r\n  }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: Card, decorators: [{
            type: Component,
            args: [{ selector: 'mt-card', standalone: true, imports: [CommonModule], host: {
                        class: 'block bg-content rounded-2xl border-1 border-surface',
                    }, template: "<div class=\"size-full flex flex-col\">\r\n  @if (headless()) {\r\n    <!-- Custom headless template -->\r\n    <ng-container [ngTemplateOutlet]=\"headless()\"></ng-container>\r\n  } @else {\r\n    @if (title() || cardEnd()) {\r\n      <!-- Default header with dynamic title -->\r\n      <div\r\n        class=\"flex items-center justify-between px-4 py-5 border-b border-surface\"\r\n      >\r\n        @if (title()) {\r\n          <h3 class=\"text-xl font-semibold\">{{ title() }}</h3>\r\n        }\r\n        @if (cardEnd()) {\r\n          <div class=\"flex\">\r\n            <ng-container [ngTemplateOutlet]=\"cardEnd()\"></ng-container>\r\n          </div>\r\n        }\r\n      </div>\r\n    }\r\n\r\n    <div class=\"flex-1\" [class.p-4]=\"!paddingless()\">\r\n      <ng-content></ng-content>\r\n    </div>\r\n  }\r\n</div>\r\n" }]
        }], propDecorators: { class: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], paddingless: [{ type: i0.Input, args: [{ isSignal: true, alias: "paddingless", required: false }] }], headless: [{ type: i0.ContentChild, args: ['headless', { isSignal: true }] }], cardEnd: [{ type: i0.ContentChild, args: ['cardEnd', { isSignal: true }] }] } });

/**
 * Generated bundle index. Do not edit.
 */

export { Card };
//# sourceMappingURL=masterteam-components-card.mjs.map
