Code coverage report for imgly-sdk-html5/src/js/operations/filters-operation.js

Statements: 98.61% (71 / 72)      Branches: 100% (34 / 34)      Functions: 92.31% (12 / 13)      Lines: 96.15% (25 / 26)      Ignored: 17 statements, 16 branches     

All files » imgly-sdk-html5/src/js/operations/ » filters-operation.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123                        1         3       1       2       1       1   1   1   1   1                   1 1   1 1   1                 1                                         29                     29       1     1           1     30 29         1 1  
/*
 * Photo Editor SDK - photoeditorsdk.com
 * Copyright (c) 2013-2015 9elements GmbH
 *
 * Released under Attribution-NonCommercial 3.0 Unported
 * http://creativecommons.org/licenses/by-nc/3.0/
 *
 * For commercial use, please contact us at contact@9elements.com
 */
 
'use strict';
 
Object.defineProperty(exports, '__esModule', {
  value: true
});
// istanbul ignore next
 
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; Eif ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { Eif (protoProps) defineProperties(Constructor.prototype, protoProps); Iif (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
 
// istanbul ignore next
 
var _get = function get(_x, _x2, _x3) { var _again = true; _function: while (_again) { var object = _x, property = _x2, receiver = _x3; _again = false; Iif (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); Iif (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { _x = parent; _x2 = property; _x3 = receiver; _again = true; desc = parent = undefined; continue _function; } } else Eif ('value' in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } } };
 
// istanbul ignore next
 
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 
// istanbul ignore next
 
function _classCallCheck(instance, Constructor) { Iif (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
 
// istanbul ignore next
 
function _inherits(subClass, superClass) { Iif (typeof superClass !== 'function' && superClass !== null) { throw new TypeError('Super expression must either be null or a function, not ' + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); Eif (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
 
var _operation = require('./operation');
 
var _operation2 = _interopRequireDefault(_operation);
 
var _filtersIdentityFilter = require('./filters/identity-filter');
 
var _filtersIdentityFilter2 = _interopRequireDefault(_filtersIdentityFilter);
 
/**
 * An operation that can apply a selected filter
 *
 * @class
 * @alias ImglyKit.Operations.FiltersOperation
 * @extends ImglyKit.Operation
 */
 
var FiltersOperation = (function (_Operation) {
  _inherits(FiltersOperation, _Operation);
 
  function FiltersOperation() {
    _classCallCheck(this, FiltersOperation);
 
    _get(Object.getPrototypeOf(FiltersOperation.prototype), 'constructor', this).apply(this, arguments);
  }
 
  /**
   * A unique string that identifies this operation. Can be used to select
   * operations.
   * @type {String}
   */
 
  _createClass(FiltersOperation, [{
    key: '_renderWebGL',
 
    /**
     * Renders the filter using WebGL
     * @param  {WebGLRenderer} renderer
     * @override
     */
    /* istanbul ignore next */
    value: function _renderWebGL(renderer) {
      this._render(renderer);
    }
 
    /**
     * Renders the filter using Canvas2D
     * @param {CanvasRenderer} renderer
     * @override
     */
  }, {
    key: '_renderCanvas',
    value: function _renderCanvas(renderer) {
      this._render(renderer);
    }
 
    /**
     * Renders the filter (all renderers supported)
     * @param {Renderer} renderer
     * @private
     */
  }, {
    key: '_render',
    value: function _render(renderer) {
      this._selectedFilter.render(renderer);
    }
  }]);
 
  return FiltersOperation;
})(_operation2['default']);
 
FiltersOperation.prototype.identifier = 'filters';
 
/**
 * Specifies the available options for this operation
 * @type {Object}
 */
FiltersOperation.prototype.availableOptions = {
  filter: { type: 'object', 'default': _filtersIdentityFilter2['default'],
    setter: function setter(Filter) {
      this._selectedFilter = new Filter();
      return Filter;
    }
  }
};
 
exports['default'] = FiltersOperation;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9yb290L1NFUlZFUi9pbWdseS1zZGstaHRtbDUvc3JjL2pzL29wZXJhdGlvbnMvZmlsdGVycy1vcGVyYXRpb24uanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7eUJBVXNCLGFBQWE7Ozs7cUNBQ1IsMkJBQTJCOzs7Ozs7Ozs7Ozs7SUFTaEQsZ0JBQWdCO1lBQWhCLGdCQUFnQjs7V0FBaEIsZ0JBQWdCOzBCQUFoQixnQkFBZ0I7OytCQUFoQixnQkFBZ0I7Ozs7Ozs7OztlQUFoQixnQkFBZ0I7Ozs7Ozs7OztXQU9QLHNCQUFDLFFBQVEsRUFBRTtBQUN0QixVQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0tBQ3ZCOzs7Ozs7Ozs7V0FPYSx1QkFBQyxRQUFRLEVBQUU7QUFDdkIsVUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQTtLQUN2Qjs7Ozs7Ozs7O1dBT08saUJBQUMsUUFBUSxFQUFFO0FBQ2pCLFVBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0tBQ3RDOzs7U0EzQkcsZ0JBQWdCOzs7QUFtQ3RCLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFBOzs7Ozs7QUFNakQsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLGdCQUFnQixHQUFHO0FBQzVDLFFBQU0sRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsNkNBQXVCO0FBQy9DLFVBQU0sRUFBRSxnQkFBVSxNQUFNLEVBQUU7QUFDeEIsVUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLE1BQU0sRUFBRSxDQUFBO0FBQ25DLGFBQU8sTUFBTSxDQUFBO0tBQ2Q7R0FDRjtDQUNGLENBQUE7O3FCQUVjLGdCQUFnQiIsImZpbGUiOiIvcm9vdC9TRVJWRVIvaW1nbHktc2RrLWh0bWw1L3NyYy9qcy9vcGVyYXRpb25zL2ZpbHRlcnMtb3BlcmF0aW9uLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFBob3RvIEVkaXRvciBTREsgLSBwaG90b2VkaXRvcnNkay5jb21cbiAqIENvcHlyaWdodCAoYykgMjAxMy0yMDE1IDllbGVtZW50cyBHbWJIXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgQXR0cmlidXRpb24tTm9uQ29tbWVyY2lhbCAzLjAgVW5wb3J0ZWRcbiAqIGh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LW5jLzMuMC9cbiAqXG4gKiBGb3IgY29tbWVyY2lhbCB1c2UsIHBsZWFzZSBjb250YWN0IHVzIGF0IGNvbnRhY3RAOWVsZW1lbnRzLmNvbVxuICovXG5cbmltcG9ydCBPcGVyYXRpb24gZnJvbSAnLi9vcGVyYXRpb24nXG5pbXBvcnQgSWRlbnRpdHlGaWx0ZXIgZnJvbSAnLi9maWx0ZXJzL2lkZW50aXR5LWZpbHRlcidcblxuLyoqXG4gKiBBbiBvcGVyYXRpb24gdGhhdCBjYW4gYXBwbHkgYSBzZWxlY3RlZCBmaWx0ZXJcbiAqXG4gKiBAY2xhc3NcbiAqIEBhbGlhcyBJbWdseUtpdC5PcGVyYXRpb25zLkZpbHRlcnNPcGVyYXRpb25cbiAqIEBleHRlbmRzIEltZ2x5S2l0Lk9wZXJhdGlvblxuICovXG5jbGFzcyBGaWx0ZXJzT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uIHtcbiAgLyoqXG4gICAqIFJlbmRlcnMgdGhlIGZpbHRlciB1c2luZyBXZWJHTFxuICAgKiBAcGFyYW0gIHtXZWJHTFJlbmRlcmVyfSByZW5kZXJlclxuICAgKiBAb3ZlcnJpZGVcbiAgICovXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIF9yZW5kZXJXZWJHTCAocmVuZGVyZXIpIHtcbiAgICB0aGlzLl9yZW5kZXIocmVuZGVyZXIpXG4gIH1cblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgZmlsdGVyIHVzaW5nIENhbnZhczJEXG4gICAqIEBwYXJhbSB7Q2FudmFzUmVuZGVyZXJ9IHJlbmRlcmVyXG4gICAqIEBvdmVycmlkZVxuICAgKi9cbiAgX3JlbmRlckNhbnZhcyAocmVuZGVyZXIpIHtcbiAgICB0aGlzLl9yZW5kZXIocmVuZGVyZXIpXG4gIH1cblxuICAvKipcbiAgICogUmVuZGVycyB0aGUgZmlsdGVyIChhbGwgcmVuZGVyZXJzIHN1cHBvcnRlZClcbiAgICogQHBhcmFtIHtSZW5kZXJlcn0gcmVuZGVyZXJcbiAgICogQHByaXZhdGVcbiAgICovXG4gIF9yZW5kZXIgKHJlbmRlcmVyKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWRGaWx0ZXIucmVuZGVyKHJlbmRlcmVyKVxuICB9XG59XG5cbi8qKlxuICogQSB1bmlxdWUgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGlzIG9wZXJhdGlvbi4gQ2FuIGJlIHVzZWQgdG8gc2VsZWN0XG4gKiBvcGVyYXRpb25zLlxuICogQHR5cGUge1N0cmluZ31cbiAqL1xuRmlsdGVyc09wZXJhdGlvbi5wcm90b3R5cGUuaWRlbnRpZmllciA9ICdmaWx0ZXJzJ1xuXG4vKipcbiAqIFNwZWNpZmllcyB0aGUgYXZhaWxhYmxlIG9wdGlvbnMgZm9yIHRoaXMgb3BlcmF0aW9uXG4gKiBAdHlwZSB7T2JqZWN0fVxuICovXG5GaWx0ZXJzT3BlcmF0aW9uLnByb3RvdHlwZS5hdmFpbGFibGVPcHRpb25zID0ge1xuICBmaWx0ZXI6IHsgdHlwZTogJ29iamVjdCcsIGRlZmF1bHQ6IElkZW50aXR5RmlsdGVyLFxuICAgIHNldHRlcjogZnVuY3Rpb24gKEZpbHRlcikge1xuICAgICAgdGhpcy5fc2VsZWN0ZWRGaWx0ZXIgPSBuZXcgRmlsdGVyKClcbiAgICAgIHJldHVybiBGaWx0ZXJcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgRmlsdGVyc09wZXJhdGlvblxuIl19