diff --git a/addon/mixins/route.js b/addon/mixins/route.js index ea2ec742..eaf2f360 100644 --- a/addon/mixins/route.js +++ b/addon/mixins/route.js @@ -20,14 +20,6 @@ export default Ember.Mixin.create({ */ _perPage: 25, - /** - @private - @property _currentPage - @type Integer - @default 0 - */ - _currentPage: 0, - /** @private @property _extraParams @@ -75,6 +67,13 @@ export default Ember.Mixin.create({ @default 'controller.model' */ _modelPath: 'controller.model', + + /** + @property currentPage + @type Integer + @default 0 + */ + currentPage: 0, /** * Name of the "per page" param in the @@ -106,9 +105,9 @@ export default Ember.Mixin.create({ @type Boolean @default false */ - _canLoadMore: Ember.computed('_totalPages', '_currentPage', function() { + _canLoadMore: Ember.computed('_totalPages', 'currentPage', function() { var totalPages = this.get('_totalPages'); - var currentPage = this.get('_currentPage'); + var currentPage = this.get('currentPage'); return (totalPages && currentPage) ? (currentPage < totalPages) : false; }), @@ -160,7 +159,7 @@ export default Ember.Mixin.create({ promise.then( infinityModel => { var totalPages = infinityModel.get(this.get('totalPagesParam')); - this.set('_currentPage', startingPage); + this.set('currentPage', startingPage); this.set('_totalPages', totalPages); infinityModel.set('reachedInfinity', !this.get('_canLoadMore')); Ember.run.scheduleOnce('afterRender', this, 'infinityModelUpdated', { @@ -184,7 +183,7 @@ export default Ember.Mixin.create({ @return {Boolean} */ _infinityLoad() { - var nextPage = this.get('_currentPage') + 1; + var nextPage = this.get('currentPage') + 1; var perPage = this.get('_perPage'); var totalPages = this.get('_totalPages'); var modelName = this.get('_infinityModelName'); @@ -207,7 +206,7 @@ export default Ember.Mixin.create({ newObjects => { this.updateInfinityModel(newObjects); this.set('_loadingMore', false); - this.set('_currentPage', nextPage); + this.set('currentPage', nextPage); Ember.run.scheduleOnce('afterRender', this, 'infinityModelUpdated', { lastPageLoaded: nextPage, totalPages: totalPages, diff --git a/package.json b/package.json index d3ce97b1..d8eddfac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ember-infinity", - "version": "0.0.11", + "version": "0.0.12", "description": "Simple, flexible infinite scroll for Ember CLI Apps.", "directories": { "doc": "doc", diff --git a/tests/unit/mixins/route-test.js b/tests/unit/mixins/route-test.js index ea514058..d0e0f0db 100644 --- a/tests/unit/mixins/route-test.js +++ b/tests/unit/mixins/route-test.js @@ -83,7 +83,7 @@ test('it sets state before it reaches the end', assert => { }); assert.equal(31, route.get('_totalPages')); - assert.equal(1, route.get('_currentPage')); + assert.equal(1, route.get('currentPage')); assert.equal(true, route.get('_canLoadMore')); assert.ok(Ember.$.isEmptyObject(route.get('_extraParams'))); assert.ok(!model.get('reachedInfinity'), 'Should not reach infinity'); @@ -186,7 +186,7 @@ test('it sets state when it reaches the end', assert => { }); assert.equal(31, route.get('_totalPages')); - assert.equal(31, route.get('_currentPage')); + assert.equal(31, route.get('currentPage')); assert.ok(Ember.$.isEmptyObject(route.get('_extraParams'))); assert.equal(false, route.get('_canLoadMore')); assert.ok(model.get('reachedInfinity'), 'Should reach infinity'); @@ -244,7 +244,7 @@ test('it uses extra params when loading more data', assert => { assert.equal('param', route.get('_extraParams.extra')); assert.equal(false, route.get('_canLoadMore')); - assert.equal(2, route.get('_currentPage')); + assert.equal(2, route.get('currentPage')); assert.ok(model.get('reachedInfinity'), 'Should reach infinity'); }); @@ -304,7 +304,7 @@ test('it uses overridden params when loading more data', assert => { }); assert.equal(false, route.get('_canLoadMore')); - assert.equal(3, route.get('_currentPage')); + assert.equal(3, route.get('currentPage')); assert.ok(model.get('reachedInfinity'), 'Should reach infinity'); }); @@ -369,7 +369,7 @@ test('it uses bound params when loading more data', assert => { }); assert.equal(false, route.get('_canLoadMore')); - assert.equal(3, route.get('_currentPage')); + assert.equal(3, route.get('currentPage')); assert.ok(model.get('reachedInfinity'), 'Should reach infinity'); });