{"code":"import * as tslib_1 from \"tslib\";\r\nimport { html, LitElement } from '@polymer/lit-element';\r\nimport { component, property } from 'polymer3-decorators';\r\nimport { bindAttributes } from '../../util/decorators';\r\nimport CSS from './button-css';\r\n/**\r\n * @class Button\r\n * The button element is a styled button with options of\r\n * adding an icon, loading state, and size.\r\n */\r\nvar Button = /** @class */ (function (_super) {\r\n    tslib_1.__extends(Button, _super);\r\n    function Button() {\r\n        return _super !== null && _super.apply(this, arguments) || this;\r\n    }\r\n    Object.defineProperty(Button.prototype, \"_icon\", {\r\n        get: function () {\r\n            return this.shadowRoot.querySelector('zen-icon');\r\n        },\r\n        enumerable: true,\r\n        configurable: true\r\n    });\r\n    Button.prototype._render = function (_a) {\r\n        var icon = _a.icon, size = _a.size, hollow = _a.hollow;\r\n        return html(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject([\"\\n            \", \"\\n            \", \"\\n            <slot>Submit</slot>\\n        \"], [\"\\n            \", \"\\n            \",\r\n            \"\\n            <slot>Submit</slot>\\n        \"])), CSS, icon\r\n            ? html(templateObject_2 || (templateObject_2 = tslib_1.__makeTemplateObject([\"<zen-icon type=\\\"\", \"\\\" size=\\\"\", \"\\\" color=\\\"\", \"\\\"></zen-icon>\"], [\"<zen-icon type=\\\"\", \"\\\" size=\\\"\", \"\\\" color=\\\"\", \"\\\"></zen-icon>\"])), icon, size, this._iconColor) : '');\r\n    };\r\n    Object.defineProperty(Button.prototype, \"_iconColor\", {\r\n        get: function () {\r\n            if (this.hollow && this.color)\r\n                return this.color;\r\n            if (this.hollow && !this.color)\r\n                return 'main';\r\n            return 'white';\r\n        },\r\n        enumerable: true,\r\n        configurable: true\r\n    });\r\n    Button._boundAttributes = ['hollow', 'color', 'iconright', 'icon', 'disabled', 'size'];\r\n    tslib_1.__decorate([\r\n        property,\r\n        tslib_1.__metadata(\"design:type\", String)\r\n    ], Button.prototype, \"size\");\r\n    tslib_1.__decorate([\r\n        property,\r\n        tslib_1.__metadata(\"design:type\", Object)\r\n    ], Button.prototype, \"icon\");\r\n    tslib_1.__decorate([\r\n        property,\r\n        tslib_1.__metadata(\"design:type\", Boolean)\r\n    ], Button.prototype, \"iconright\");\r\n    tslib_1.__decorate([\r\n        property,\r\n        tslib_1.__metadata(\"design:type\", Boolean)\r\n    ], Button.prototype, \"hollow\");\r\n    tslib_1.__decorate([\r\n        property,\r\n        tslib_1.__metadata(\"design:type\", String)\r\n    ], Button.prototype, \"color\");\r\n    tslib_1.__decorate([\r\n        property,\r\n        tslib_1.__metadata(\"design:type\", Boolean)\r\n    ], Button.prototype, \"disabled\");\r\n    tslib_1.__decorate([\r\n        property,\r\n        tslib_1.__metadata(\"design:type\", Boolean)\r\n    ], Button.prototype, \"loading\");\r\n    Button = tslib_1.__decorate([\r\n        component('zen-button'),\r\n        bindAttributes\r\n    ], Button);\r\n    return Button;\r\n}(LitElement));\r\nexport default Button;\r\nvar templateObject_2, templateObject_1;\r\n","dts":{"name":"/Users/tristanmatthias/projects/origami/zen/components/Button/Button.d.ts","text":"import { LitElement } from '@polymer/lit-element';\r\nimport { TemplateResult } from 'lit-html';\r\nexport interface ButtonProps {\r\n    size?: string;\r\n    icon?: string | boolean;\r\n    iconright?: boolean;\r\n    hollow?: boolean;\r\n    color?: string;\r\n    disabled?: boolean;\r\n    loading?: boolean;\r\n}\r\n/**\r\n * @class Button\r\n * The button element is a styled button with options of\r\n * adding an icon, loading state, and size.\r\n */\r\nexport default class Button extends LitElement implements ButtonProps {\r\n    size?: string;\r\n    icon?: string | boolean;\r\n    iconright?: boolean;\r\n    hollow?: boolean;\r\n    color?: string;\r\n    disabled?: boolean;\r\n    loading?: boolean;\r\n    private static _boundAttributes;\r\n    private readonly _icon;\r\n    _render({icon, size, hollow}: ButtonProps): TemplateResult;\r\n    private readonly _iconColor;\r\n}\r\n"}}
