@@ -31,6 +31,8 @@ var xml = require('xml2js');
3131var http = require ( 'http' ) ;
3232var https = require ( 'https' ) ;
3333var merge = require ( 'lodash.merge' ) ;
34+ var debugRequest = require ( 'debug' ) ( 'quickbase:request' ) ;
35+ var debugResponse = require ( 'debug' ) ( 'quickbase:response' ) ;
3436var Promise = require ( 'bluebird' ) ;
3537
3638/* Backwards Compatibility */
@@ -124,6 +126,8 @@ var QuickBase = function () {
124126 function QuickBase ( options ) {
125127 _classCallCheck ( this , QuickBase ) ;
126128
129+ this . _id = 0 ;
130+
127131 this . className = QuickBase . className ;
128132
129133 this . settings = merge ( { } , QuickBase . defaults , options || { } ) ;
@@ -142,14 +146,16 @@ var QuickBase = function () {
142146 Promise . using ( _this2 . throttle . acquire ( ) , function ( ) {
143147 var query = new QueryBuilder ( _this2 , action , options || { } , callback ) ;
144148
149+ query . _id = _this2 . _id ;
150+
151+ ++ _this2 . _id ;
152+
145153 return query . addFlags ( ) . processOptions ( ) . actionRequest ( ) . constructPayload ( ) . processQuery ( ) . then ( function ( results ) {
146154 query . results = results ;
147155
148156 query . actionResponse ( ) ;
149157
150- if ( QuickBase . DEBUG ) {
151- console . info ( 'Results Returned: ' , query . results ) ;
152- }
158+ debugResponse ( query . _id , query . results ) ;
153159
154160 if ( callback instanceof Function ) {
155161 callback ( null , query . results ) ;
@@ -347,6 +353,7 @@ var QueryBuilder = function () {
347353
348354 this . results ;
349355
356+ this . _id = 0 ;
350357 this . _nErr = 0 ;
351358
352359 return this ;
@@ -569,9 +576,7 @@ var QueryBuilder = function () {
569576 reject ( err ) ;
570577 } ) ;
571578
572- if ( QuickBase . DEBUG ) {
573- console . info ( 'Sending Request (Headers/Payload):' , options , _this7 . payload ) ;
574- }
579+ debugRequest ( _this7 . _id , options , _this7 . payload ) ;
575580
576581 request . end ( ) ;
577582 } ) ;
@@ -1567,7 +1572,6 @@ QuickBase.xmlNodeParsers = xmlNodeParsers;
15671572/* Expose Properties */
15681573QuickBase . className = 'QuickBase' ;
15691574QuickBase . defaults = defaults ;
1570- QuickBase . DEBUG = false ;
15711575
15721576/* Export Module */
15731577if ( typeof module !== 'undefined' && module . exports ) {
@@ -1582,7 +1586,9 @@ if (typeof global !== 'undefined' && typeof window !== 'undefined' && global ===
15821586 global . QuickBase = QuickBase ;
15831587
15841588 if ( window . location . search . match ( / d e b u g = 1 / i) ) {
1585- QuickBase . DEBUG = true ;
1589+ if ( window . localStorage ) {
1590+ window . localStorage . debug = 'quickbase:*' ;
1591+ }
15861592 } else {
15871593 QuickBase . Promise . config ( {
15881594 longStackTraces : false
0 commit comments