text: define(["../iron-flex-layout/iron-flex-layout.js","../paper-styles/element-styles/paper-material-styles.js","../paper-behaviors/paper-button-behavior.js","../polymer/lib/legacy/polymer-fn.js","../polymer/polymer-legacy.js"],function(_ironFlexLayout,_paperMaterialStyles,_paperButtonBehavior,_polymerFn,_polymerLegacy){"use strict";/**
  @license
  Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
  This code may only be used under the BSD style license found at
  http://polymer.github.io/LICENSE.txt The complete set of authors may be found at
  http://polymer.github.io/AUTHORS.txt The complete set of contributors may be
  found at http://polymer.github.io/CONTRIBUTORS.txt Code distributed by Google as
  part of the polymer project is also subject to an additional IP rights grant
  found at http://polymer.github.io/PATENTS.txt
  */const template=_polymerLegacy.html`
    <style include="paper-material-styles">
      /* Need to specify the same specificity as the styles imported from paper-material. */
      :host {
        @apply --layout-inline;
        @apply --layout-center-center;
        position: relative;
        box-sizing: border-box;
        min-width: 5.14em;
        margin: 0 0.29em;
        background: transparent;
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
        -webkit-tap-highlight-color: transparent;
        font: inherit;
        text-transform: uppercase;
        outline-width: 0;
        border-radius: 3px;
        -moz-user-select: none;
        -ms-user-select: none;
        -webkit-user-select: none;
        user-select: none;
        cursor: pointer;
        z-index: 0;
        padding: 0.7em 0.57em;
  
        @apply --paper-font-common-base;
        @apply --paper-button;
      }
  
      :host([elevation="1"]) {
        @apply --paper-material-elevation-1;
      }
  
      :host([elevation="2"]) {
        @apply --paper-material-elevation-2;
      }
  
      :host([elevation="3"]) {
        @apply --paper-material-elevation-3;
      }
  
      :host([elevation="4"]) {
        @apply --paper-material-elevation-4;
      }
  
      :host([elevation="5"]) {
        @apply --paper-material-elevation-5;
      }
  
      :host([hidden]) {
        display: none !important;
      }
  
      :host([raised].keyboard-focus) {
        font-weight: bold;
        @apply --paper-button-raised-keyboard-focus;
      }
  
      :host(:not([raised]).keyboard-focus) {
        font-weight: bold;
        @apply --paper-button-flat-keyboard-focus;
      }
  
      :host([disabled]) {
        background: none;
        color: #a8a8a8;
        cursor: auto;
        pointer-events: none;
  
        @apply --paper-button-disabled;
      }
  
      :host([disabled][raised]) {
        background: #eaeaea;
      }
  
  
      :host([animated]) {
        @apply --shadow-transition;
      }
  
      paper-ripple {
        color: var(--paper-button-ink-color);
      }
    </style>
  
    <slot></slot>`;template.setAttribute("strip-whitespace","");/**
  Material design:
  [Buttons](https://www.google.com/design/spec/components/buttons.html)
  
  `paper-button` is a button. When the user touches the button, a ripple effect
  emanates from the point of contact. It may be flat or raised. A raised button is
  styled with a shadow.
  
  Example:
  
      <paper-button>Flat button</paper-button>
      <paper-button raised>Raised button</paper-button>
      <paper-button noink>No ripple effect</paper-button>
      <paper-button toggles>Toggle-able button</paper-button>
  
  A button that has `toggles` true will remain `active` after being clicked (and
  will have an `active` attribute set). For more information, see the
  `IronButtonState` behavior.
  
  You may use custom DOM in the button body to create a variety of buttons. For
  example, to create a button with an icon and some text:
  
      <paper-button>
        <iron-icon icon="favorite"></iron-icon>
        custom button content
      </paper-button>
  
  To use `paper-button` as a link, wrap it in an anchor tag. Since `paper-button`
  will already receive focus, you may want to prevent the anchor tag from
  receiving focus as well by setting its tabindex to -1.
  
      <a href="https://www.polymer-project.org/" tabindex="-1">
        <paper-button raised>Polymer Project</paper-button>
      </a>
  
  ### Styling
  
  Style the button with CSS as you would a normal DOM element.
  
      paper-button.fancy {
        background: green;
        color: yellow;
      }
  
      paper-button.fancy:hover {
        background: lime;
      }
  
      paper-button[disabled],
      paper-button[toggles][active] {
        background: red;
      }
  
  By default, the ripple is the same color as the foreground at 25% opacity. You
  may customize the color using the `--paper-button-ink-color` custom property.
  
  The following custom properties and mixins are also available for styling:
  
  Custom property | Description | Default
  ----------------|-------------|----------
  `--paper-button-ink-color` | Background color of the ripple | `Based on the button's color`
  `--paper-button` | Mixin applied to the button | `{}`
  `--paper-button-disabled` | Mixin applied to the disabled button. Note that you can also use the `paper-button[disabled]` selector | `{}`
  `--paper-button-flat-keyboard-focus` | Mixin applied to a flat button after it's been focused using the keyboard | `{}`
  `--paper-button-raised-keyboard-focus` | Mixin applied to a raised button after it's been focused using the keyboard | `{}`
  
  @demo demo/index.html
  */(0,_polymerFn.Polymer)({_template:template,is:"paper-button",behaviors:[_paperButtonBehavior.PaperButtonBehavior],properties:{/**
       * If true, the button should be styled with a shadow.
       */raised:{type:Boolean,reflectToAttribute:!0,value:!1,observer:"_calculateElevation"}},_calculateElevation:function(){if(!this.raised){this._setElevation(0)}else{_paperButtonBehavior.PaperButtonBehaviorImpl._calculateElevation.apply(this)}}/**
    Fired when the animation finishes.
    This is useful if you want to wait until
    the ripple animation finishes to perform some action.
  
    @event transitionend
    Event param: {{node: Object}} detail Contains the animated node.
    */})});