- import Ember from "ember";
- import ArrayModifier from "./ArrayModifier";
-
- /**
- * Class to sort elements in the array.
- *
- * @class ArrayModifier.ArraySortModifier
- * @extends ArrayModifier.ArrayModifier
- * @module ember-array-modifier
- * @submodule ember-array-modifier-types
- */
- export default ArrayModifier.extend({
- type : "sort",
- groupType : "sort",
-
- /**
- * Order to sort by. true for ascending, false for descending
- *
- * @property order
- * @type String
- * @default true
- */
- order : true,
-
- /**
- * Set to true if a listener on all objects in the array should be added.
- *
- * @property addObserverToAll
- * @type Boolean
- * @default false
- */
- addObserverToAll : false,
-
- /**
- * Method called to modify an entire array.
- *
- * @method modify
- * @param {Array} array The array to modify.
- */
- modify : function(array) {
- console.log("Sorting!!");
- array.sortBy(this.get("property"));
- if(!this.get("order")) {
- array.reverseObjects();
- }
- return array;
- },
-
- /**
- * Function called when observers are supposed to be added.
- *
- * @method addModifierObservers
- * @param {Class} context Context to add the observer to.
- * @param {String|Function} method Method to be called when observer is called.
- */
- addModifierObservers : function(context, method) {
- this._super(context, method);
- Ember.addObserver(this, "order", context, method);
- },
-
- /**
- * Function called when observers are supposed to be removed.
- *
- * @method removeModifierObservers
- * @param {Class} context Context to add the observer to.
- * @param {String|Function} method Method to be called when observer is called.
- */
- removeModifierObservers : function(context, method) {
- this._super(context, method);
- Ember.removeObserver(this, "order", context, method);
- },
- });
-
-