import { Component, EventEmitter, Input, Output } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "@seniorsistemas/angular-components/button";
export class EmptyStateComponent {
    static nextIdSeed = 0;
    static _nextId = EmptyStateComponent.nextIdSeed;
    static getNextId() {
        return this._nextId++;
    }
    id = `s-empty-state-${EmptyStateComponent.getNextId()}`;
    title;
    iconClass = 'fa fa-inbox';
    description;
    showPrimaryAction = true;
    showSecondaryAction = true;
    primaryActionLabel;
    secondaryActionLabel;
    primaryModel = [];
    primaryAction = new EventEmitter();
    secondaryAction = new EventEmitter();
    static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EmptyStateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
    static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: EmptyStateComponent, selector: "s-empty-state", inputs: { id: "id", title: "title", iconClass: "iconClass", description: "description", showPrimaryAction: "showPrimaryAction", showSecondaryAction: "showSecondaryAction", primaryActionLabel: "primaryActionLabel", secondaryActionLabel: "secondaryActionLabel", primaryModel: "primaryModel" }, outputs: { primaryAction: "primaryAction", secondaryAction: "secondaryAction" }, ngImport: i0, template: "<div\n    [id]=\"id\"\n    class=\"empty-state\"\n>\n    <div\n        [id]=\"id + '-icon'\"\n        class=\"icon\"\n    >\n        <i\n            [attr.class]=\"iconClass ? iconClass : 'fa fa-cogs'\"\n            aria-hidden=\"true\"\n        ></i>\n    </div>\n    <div\n        [id]=\"id + '-title'\"\n        class=\"title\"\n    >\n        {{ title }}\n    </div>\n\n    @if (description) {\n        <div\n            [id]=\"id + '-description'\"\n            class=\"description\"\n        >\n            <p>{{ description }}</p>\n        </div>\n    }\n    @if (showPrimaryAction && primaryActionLabel) {\n        <div\n            [id]=\"id + '-actions'\"\n            class=\"actions\"\n        >\n            <s-button\n                [id]=\"id + '-primary-action'\"\n                type=\"button\"\n                [label]=\"primaryActionLabel\"\n                [menuOptions]=\"primaryModel\"\n                (clicked)=\"primaryAction.next()\"\n            ></s-button>\n            @if (showSecondaryAction && secondaryActionLabel) {\n                <s-button\n                    [id]=\"id + '-secondary-action'\"\n                    id=\"secondaryAction\"\n                    type=\"button\"\n                    [label]=\"secondaryActionLabel\"\n                    priority=\"link\"\n                    (clicked)=\"secondaryAction.next()\"\n                ></s-button>\n            }\n        </div>\n    }\n</div>\n", styles: [".empty-state{width:100%;text-align:center}.empty-state .icon{color:#d8d8d8;font-size:6em}.empty-state .title{font-weight:700;margin-bottom:10px}.empty-state .description{margin-bottom:15px;color:#999;padding:0 20px;text-align:center}.empty-state .description p{margin:auto;max-width:400px;max-height:80px;overflow:hidden}.empty-state .actions{text-align:center;width:100%}\n"], dependencies: [{ kind: "component", type: i1.ButtonComponent, selector: "s-button", inputs: ["id", "label", "tooltip", "tooltipPosition", "iconClass", "rightIconClass", "caret", "styleClass", "baseZIndex", "disabled", "auxiliary", "type", "priority", "menuOptions", "size", "slide", "animation", "badge", "iconColor"], outputs: ["clicked"] }] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: EmptyStateComponent, decorators: [{
            type: Component,
            args: [{ selector: 's-empty-state', template: "<div\n    [id]=\"id\"\n    class=\"empty-state\"\n>\n    <div\n        [id]=\"id + '-icon'\"\n        class=\"icon\"\n    >\n        <i\n            [attr.class]=\"iconClass ? iconClass : 'fa fa-cogs'\"\n            aria-hidden=\"true\"\n        ></i>\n    </div>\n    <div\n        [id]=\"id + '-title'\"\n        class=\"title\"\n    >\n        {{ title }}\n    </div>\n\n    @if (description) {\n        <div\n            [id]=\"id + '-description'\"\n            class=\"description\"\n        >\n            <p>{{ description }}</p>\n        </div>\n    }\n    @if (showPrimaryAction && primaryActionLabel) {\n        <div\n            [id]=\"id + '-actions'\"\n            class=\"actions\"\n        >\n            <s-button\n                [id]=\"id + '-primary-action'\"\n                type=\"button\"\n                [label]=\"primaryActionLabel\"\n                [menuOptions]=\"primaryModel\"\n                (clicked)=\"primaryAction.next()\"\n            ></s-button>\n            @if (showSecondaryAction && secondaryActionLabel) {\n                <s-button\n                    [id]=\"id + '-secondary-action'\"\n                    id=\"secondaryAction\"\n                    type=\"button\"\n                    [label]=\"secondaryActionLabel\"\n                    priority=\"link\"\n                    (clicked)=\"secondaryAction.next()\"\n                ></s-button>\n            }\n        </div>\n    }\n</div>\n", styles: [".empty-state{width:100%;text-align:center}.empty-state .icon{color:#d8d8d8;font-size:6em}.empty-state .title{font-weight:700;margin-bottom:10px}.empty-state .description{margin-bottom:15px;color:#999;padding:0 20px;text-align:center}.empty-state .description p{margin:auto;max-width:400px;max-height:80px;overflow:hidden}.empty-state .actions{text-align:center;width:100%}\n"] }]
        }], propDecorators: { id: [{
                type: Input
            }], title: [{
                type: Input,
                args: [{ required: true }]
            }], iconClass: [{
                type: Input
            }], description: [{
                type: Input
            }], showPrimaryAction: [{
                type: Input
            }], showSecondaryAction: [{
                type: Input
            }], primaryActionLabel: [{
                type: Input
            }], secondaryActionLabel: [{
                type: Input
            }], primaryModel: [{
                type: Input
            }], primaryAction: [{
                type: Output
            }], secondaryAction: [{
                type: Output
            }] } });
//# sourceMappingURL=data:application/json;base64, 