text: /**
  @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
  */
  import '@polymer/polymer/polymer-legacy.js';
  
  import {IronButtonState} from '@polymer/iron-behaviors/iron-button-state.js';
  import {IronControlState} from '@polymer/iron-behaviors/iron-control-state.js';
  
  import {PaperRippleBehavior} from './paper-ripple-behavior.js';
  
  /**
   * `PaperInkyFocusBehavior` implements a ripple when the element has keyboard
   * focus.
   *
   * @polymerBehavior PaperInkyFocusBehavior
   */
  export const PaperInkyFocusBehaviorImpl = {
    observers: ['_focusedChanged(receivedFocusFromKeyboard)'],
  
    _focusedChanged: function(receivedFocusFromKeyboard) {
      if (receivedFocusFromKeyboard) {
        this.ensureRipple();
      }
      if (this.hasRipple()) {
        this._ripple.holdDown = receivedFocusFromKeyboard;
      }
    },
  
    _createRipple: function() {
      var ripple = PaperRippleBehavior._createRipple();
      ripple.id = 'ink';
      ripple.setAttribute('center', '');
      ripple.classList.add('circle');
      return ripple;
    }
  };
  
  /** @polymerBehavior */
  export const PaperInkyFocusBehavior = [
    IronButtonState,
    IronControlState,
    PaperRippleBehavior,
    PaperInkyFocusBehaviorImpl
  ];
  