function InkRippleDirective ($mdButtonInkRipple, $mdCheckboxInkRipple) {
  return {
    controller: angular.noop,
    link:       function (scope, element, attr) {
      attr.hasOwnProperty('mdInkRippleCheckbox')
          ? $mdCheckboxInkRipple.attach(scope, element)
          : $mdButtonInkRipple.attach(scope, element);
    }
  };
}
@ngdoc directive
@name mdInkRipple
@module material.core.ripple

@description
The `md-ink-ripple` directive allows you to specify the ripple color or if a ripple is allowed.

@param {string|boolean} md-ink-ripple A color string `#FF0000` or boolean (`false` or `0`) for
 preventing ripple

@usage
### String values
<hljs lang="html">
  <ANY md-ink-ripple="#FF0000">
    Ripples in red
  </ANY>

  <ANY md-ink-ripple="false">
    Not rippling
  </ANY>
</hljs>

### Interpolated values
<hljs lang="html">
  <ANY md-ink-ripple="{{ randomColor() }}">
    Ripples with the return value of 'randomColor' function
  </ANY>

  <ANY md-ink-ripple="{{ canRipple() }}">
    Ripples if 'canRipple' function return value is not 'false' or '0'
  </ANY>
</hljs>