import { h } from "@stencil/core";
export class PdsText {
    constructor() {
        this.align = undefined;
        this.color = undefined;
        this.decoration = undefined;
        this.gutter = undefined;
        this.size = undefined;
        this.weight = undefined;
        this.tag = "p";
    }
    render() {
        const Tag = this.tag;
        const typeClasses = `
      pds-text
      ${this.align !== undefined && this.align.trim() !== '' ? `pds-text--align-${this.align}` : ''}
      ${this.color !== undefined && this.color.trim() !== '' ? `pds-text--color-${this.color}` : ''}
      ${this.gutter !== undefined && this.gutter.trim() !== '' ? `pds-text--gutter-${this.gutter}` : ''}
      ${this.size !== undefined && this.size.trim() !== '' ? `pds-text--size-${this.size}` : ''}
      ${this.weight !== undefined && this.weight.trim() !== '' ? `pds-text--weight-${this.weight}` : ''}
      ${this.decoration !== undefined && this.decoration.trim() !== '' ? `pds-text--decoration-${this.decoration}` : ''}
    `;
        return (h(Tag, { key: '1f4e66d525057dea787cafa3e553572333dc1f1d', class: typeClasses }, h("slot", { key: '035a577c6c1b67b200362c0bf6431714ac8c52ba' })));
    }
    static get is() { return "pds-text"; }
    static get encapsulation() { return "shadow"; }
    static get originalStyleUrls() {
        return {
            "$": ["pds-text.scss"]
        };
    }
    static get styleUrls() {
        return {
            "$": ["pds-text.css"]
        };
    }
    static get properties() {
        return {
            "align": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "'start' | 'center' | 'end' | 'justify'",
                    "resolved": "\"center\" | \"end\" | \"justify\" | \"start\"",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Sets the text alignment."
                },
                "attribute": "align",
                "reflect": false
            },
            "color": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "| 'primary'\n  | 'secondary'\n  | 'neutral'\n  | 'accent'\n  | 'danger'\n  | 'info'\n  | 'success'\n  | 'warning'",
                    "resolved": "\"accent\" | \"danger\" | \"info\" | \"neutral\" | \"primary\" | \"secondary\" | \"success\" | \"warning\"",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Sets the text color."
                },
                "attribute": "color",
                "reflect": false
            },
            "decoration": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "| 'strikethrough'\n  | 'underline-dotted'",
                    "resolved": "\"strikethrough\" | \"underline-dotted\"",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Sets the text decoration."
                },
                "attribute": "decoration",
                "reflect": false
            },
            "gutter": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "| '2xl'\n  | 'xl'\n  | 'lg'\n  | 'md'\n  | 'sm'\n  | 'xs'\n  | '2xs'",
                    "resolved": "\"2xl\" | \"2xs\" | \"lg\" | \"md\" | \"sm\" | \"xl\" | \"xs\"",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Set the bottom margin for the text."
                },
                "attribute": "gutter",
                "reflect": false
            },
            "size": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "| '2xl'\n  | 'xl'\n  | 'lg'\n  | 'md'\n  | 'sm'\n  | 'xs'\n  | '2xs'",
                    "resolved": "\"2xl\" | \"2xs\" | \"lg\" | \"md\" | \"sm\" | \"xl\" | \"xs\"",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Sets the font size."
                },
                "attribute": "size",
                "reflect": false
            },
            "weight": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "| 'extra-light'\n  | 'light'\n  | 'regular'\n  | 'medium'\n  | 'semibold'\n  | 'bold'",
                    "resolved": "\"bold\" | \"extra-light\" | \"light\" | \"medium\" | \"regular\" | \"semibold\"",
                    "references": {}
                },
                "required": false,
                "optional": true,
                "docs": {
                    "tags": [],
                    "text": "Sets the font weight."
                },
                "attribute": "weight",
                "reflect": false
            },
            "tag": {
                "type": "string",
                "mutable": false,
                "complexType": {
                    "original": "| 'h1'\n  | 'h2'\n  | 'h3'\n  | 'h4'\n  | 'h5'\n  | 'h6'\n  | 'p'\n  | 'code'\n  | 'pre'\n  | 'strong'\n  | 'em'",
                    "resolved": "\"code\" | \"em\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"p\" | \"pre\" | \"strong\"",
                    "references": {}
                },
                "required": false,
                "optional": false,
                "docs": {
                    "tags": [],
                    "text": "Determines what semantic text tag to render."
                },
                "attribute": "tag",
                "reflect": false,
                "defaultValue": "\"p\""
            }
        };
    }
}
//# sourceMappingURL=pds-text.js.map
