import { Host, h } from "@stencil/core";
export class SpwLoading {
    constructor() {
        /** Permet de spécifier un texte de chargement */
        this.text = 'Chargement...';
        /** Surface du composant (light ou dark) */
        this.surface = 'light';
        /** Taille du composant */
        this.size = 'medium';
        /** Orientation du composant (horizontal ou vertical) */
        this.orientation = 'horizontal';
    }
    get loadingClasses() {
        return {
            'spw-loading': true,
            [`spw-loading--${this.surface}`]: true,
            [`spw-loading--${this.size}`]: true,
            [`spw-loading--${this.orientation}`]: true,
        };
    }
    render() {
        return (h(Host, { key: '3e4184324f5760fb373c047ff96b3ceb639b653e' }, h("div", { key: '79980d59ff58731f54276d77a2687914c96b4e92', class: this.loadingClasses }, h("div", { key: '0e8b3edc3682ff1b51a161e1a9d8a7913e10aeeb', class: "spw-loading__spinner" }), this.text && h("p", { key: '6fe0eb89d7727ecf6ad9d0cb4efed0b586904436', class: "spw-loading__text" }, this.text))));
    }
    static get is() { return "spw-loading"; }
    static get encapsulation() { return "shadow"; }
    static get originalStyleUrls() {
        return {
            "$": ["spw-loading.scss"]
        };
    }
    static get styleUrls() {
        return {
            "$": ["spw-loading.css"]
        };
    }
    static get properties() {
        return {
            "text": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "string",
                    "resolved": "string",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Permet de sp\u00E9cifier un texte de chargement"
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "text",
                "defaultValue": "'Chargement...'"
            },
            "surface": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "'light' | 'dark'",
                    "resolved": "\"dark\" | \"light\"",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Surface du composant (light ou dark)"
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "surface",
                "defaultValue": "'light'"
            },
            "size": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "'small' | 'medium' | 'large' | 'extra-large'",
                    "resolved": "\"extra-large\" | \"large\" | \"medium\" | \"small\"",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Taille du composant"
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "size",
                "defaultValue": "'medium'"
            },
            "orientation": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "'horizontal' | 'vertical'",
                    "resolved": "\"horizontal\" | \"vertical\"",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Orientation du composant (horizontal ou vertical)"
                },
                "getter": false,
                "setter": false,
                "reflect": false,
                "attribute": "orientation",
                "defaultValue": "'horizontal'"
            }
        };
    }
}
