From 7064a1ccd39c29304e3cdba8e57dacd0d6959266 Mon Sep 17 00:00:00 2001 From: Kris Zyp Date: Fri, 20 Mar 2015 12:15:11 -0600 Subject: [PATCH] Preserve totalLength, refs #97 Preserves totalLength in a back-compat way for 1.0 --- Trackable.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Trackable.js b/Trackable.js index ea12062..b374a57 100644 --- a/Trackable.js +++ b/Trackable.js @@ -5,9 +5,10 @@ define([ 'dojo/when', 'dojo/promise/all', 'dojo/_base/array', - 'dojo/on' + 'dojo/on', + './QueryResults' /*=====, './api/Store' =====*/ -], function (lang, declare, aspect, when, whenAll, arrayUtil, on /*=====, Store =====*/) { +], function (lang, declare, aspect, when, whenAll, arrayUtil, on, QueryResults /*=====, Store =====*/) { // module: // dstore/Trackable @@ -95,13 +96,16 @@ define([ function makeFetch() { return function () { var self = this; - return when(this.inherited(arguments), function (results) { + var fetchResults = this.inherited(arguments); + return new QueryResults(when(fetchResults, function (results) { results = self._results = results.slice(); self._ranges = []; registerRange(self._ranges, 0, results.length); return results; + }), { + totalLength: fetchResults.totalLength }); }; }