/**
* @module flitter-orm/src/proxy/model/SortProxy
*/
const ModelProxy = require('./ModelProxy')
/**
* Proxy that applies a number of sorts to the cursor.
* @extends module:flitter-orm/src/proxy/model/ModelProxy~ModelProxy
*/
class SortProxy extends ModelProxy {
/**
* Instantiate the proxy.
* @param {module:flitter-orm/src/model/Model~Model|module:flitter-orm/src/proxy/model/ModelProxy~ModelProxy} model - proxy ref
* @param {Array<string>} sorts - array of sorts ('-field', '+field', or 'field')
* @param {module:flitter-orm/src/model/CursorBuilder~CursorBuilder} [builder] - optionally, the cursor builder to use
*/
constructor(model, sorts, builder = undefined) {
super(model, builder)
this._sorts = sorts
this.builder.sort(sorts)
}
}
module.exports = exports = SortProxy