From bb4d31c74bcfe0c6ec53a9ff5be740846e574e98 Mon Sep 17 00:00:00 2001 From: scottinet Date: Thu, 11 Feb 2016 10:04:11 +0100 Subject: [PATCH] renamed KuzzleDocument.toJSON to serialize --- dist/kuzzle.js | 16 ++++++++-------- dist/kuzzle.min.js | 2 +- dist/kuzzle.min.map | 2 +- src/kuzzleDataCollection.js | 4 ++-- src/kuzzleDocument.js | 12 ++++++------ test/kuzzleDocument/methods.test.js | 8 ++++---- 6 files changed, 22 insertions(+), 22 deletions(-) diff --git a/dist/kuzzle.js b/dist/kuzzle.js index 7bbcae55a..e41222242 100644 --- a/dist/kuzzle.js +++ b/dist/kuzzle.js @@ -1632,7 +1632,7 @@ KuzzleDataCollection.prototype.createDocument = function (id, document, options, } if (document instanceof KuzzleDocument) { - data = document.toJSON(); + data = document.serialize(); } else { data.body = document; } @@ -1838,7 +1838,7 @@ KuzzleDataCollection.prototype.publishMessage = function (document, options) { var data = {}; if (document instanceof KuzzleDocument) { - data = document.toJSON(); + data = document.serialize(); } else { data.body = document; } @@ -2302,7 +2302,7 @@ function KuzzleDocument(kuzzleDataCollection, documentId, content) { * * @return {object} JSON object representing this document */ -KuzzleDocument.prototype.toJSON = function () { +KuzzleDocument.prototype.serialize = function () { var data = {}; @@ -2323,7 +2323,7 @@ KuzzleDocument.prototype.toJSON = function () { * @return {string} serialized version of this object */ KuzzleDocument.prototype.toString = function () { - return JSON.stringify(this.toJSON()); + return JSON.stringify(this.serialize()); }; /** @@ -2350,7 +2350,7 @@ KuzzleDocument.prototype.delete = function (options, cb) { } if (cb) { - this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.toJSON(), options, function (err) { + this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.serialize(), options, function (err) { if (err) { return cb(err); } @@ -2358,7 +2358,7 @@ KuzzleDocument.prototype.delete = function (options, cb) { cb(null, self); }); } else { - this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.toJSON(), options); + this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.serialize(), options); } return this; @@ -2416,7 +2416,7 @@ KuzzleDocument.prototype.refresh = function (options, cb) { */ KuzzleDocument.prototype.save = function (options, cb) { var - data = this.toJSON(), + data = this.serialize(), self = this; if (options && cb === undefined && typeof options === 'function') { @@ -2451,7 +2451,7 @@ KuzzleDocument.prototype.save = function (options, cb) { * @returns {*} this */ KuzzleDocument.prototype.publish = function (options) { - var data = this.toJSON(); + var data = this.serialize(); this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'publish'), data, options); diff --git a/dist/kuzzle.min.js b/dist/kuzzle.min.js index 914a9d71b..77aeaac70 100644 --- a/dist/kuzzle.min.js +++ b/dist/kuzzle.min.js @@ -1,3 +1,3 @@ // Official Javascript SDK for Kuzzle v1.4.4 - License: Apache-2.0 -!function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;gb;b++)0===(3&b)&&(a=4294967296*Math.random()),e[b]=a>>>((3&b)<<3)&255;return e},"undefined"!=typeof console&&console.warn&&console.warn("[SECURITY] node-uuid: crypto not usable, falling back to insecure Math.random()")}}function e(){if("function"==typeof a)try{var b=a("crypto").randomBytes;l=j=b&&function(){return b(16)},j()}catch(c){}}function f(a,b,c){var d=b&&c||0,e=0;for(b=b||[],a.toLowerCase().replace(/[0-9a-f]{2}/g,function(a){16>e&&(b[d+e++]=q[a])});16>e;)b[d+e++]=0;return b}function g(a,b){var c=b||0,d=p;return d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]}function h(a,b,c){var d=b&&c||0,e=b||[];a=a||{};var f=null!=a.clockseq?a.clockseq:u,h=null!=a.msecs?a.msecs:(new Date).getTime(),i=null!=a.nsecs?a.nsecs:w+1,j=h-v+(i-w)/1e4;if(0>j&&null==a.clockseq&&(f=f+1&16383),(0>j||h>v)&&null==a.nsecs&&(i=0),i>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=h,w=i,u=f,h+=122192928e5;var k=(1e4*(268435455&h)+i)%4294967296;e[d++]=k>>>24&255,e[d++]=k>>>16&255,e[d++]=k>>>8&255,e[d++]=255&k;var l=h/4294967296*1e4&268435455;e[d++]=l>>>8&255,e[d++]=255&l,e[d++]=l>>>24&15|16,e[d++]=l>>>16&255,e[d++]=f>>>8|128,e[d++]=255&f;for(var m=a.node||t,n=0;6>n;n++)e[d+n]=m[n];return b?b:g(e)}function i(a,b,c){var d=b&&c||0;"string"==typeof a&&(b="binary"===a?new o(16):null,a=null),a=a||{};var e=a.random||(a.rng||j)();if(e[6]=15&e[6]|64,e[8]=63&e[8]|128,b)for(var f=0;16>f;f++)b[d+f]=e[f];return b||g(e)}var j,k,l,m,n;c?d():e();for(var o="function"==typeof Buffer?Buffer:Array,p=[],q={},r=0;256>r;r++)p[r]=(r+256).toString(16).substr(1),q[p[r]]=r;var s=j(),t=[1|s[0],s[1],s[2],s[3],s[4],s[5]],u=16383&(s[6]<<8|s[7]),v=0,w=0,x=i;x.v1=h,x.v4=i,x.parse=f,x.unparse=g,x.BufferClass=o,x._rng=j,x._mathRNG=k,x._nodeRNG=l,x._whatwgRNG=m,"undefined"!=typeof b&&b.exports?b.exports=x:"function"==typeof define&&define.amd?define(function(){return x}):(n=c.uuid,x.noConflict=function(){return c.uuid=n,x},c.uuid=x)}("undefined"!=typeof window?window:null)},{}],2:[function(a,b,c){function d(){var a=this,b=Date.now(),c=-1;a.queueTTL>0&&(a.offlineQueue.forEach(function(d,e){d.ts0&&a.offlineQueue.length>a.queueMaxSize&&a.offlineQueue.splice(0,a.offlineQueue.length-a.queueMaxSize)}function e(a,b){var c=Date.now(),d=this;(void 0!==d.jwtToken||b)&&d.socket.once(a.requestId,function(c){c.error&&"Token expired"===c.error.message&&(d.jwtToken=void 0,d.emitEvent("jwtTokenExpired",a,b)),b&&b(c.error,c)}),d.socket.emit("kuzzle",a),d.requestHistory[a.requestId]=c,Object.keys(d.requestHistory).forEach(function(a){d.requestHistory[a]0?(e.call(a,a.offlineQueue[0].query,a.offlineQueue[0].cb),a.offlineQueue.shift(),setTimeout(function(){f.call(a)},Math.max(0,a.replayInterval))):a.queuing=!1}function g(){var a=this;Object.keys(a.subscriptions).forEach(function(b){Object.keys(a.subscriptions[b]).forEach(function(c){var d=a.subscriptions[b][c];d.renew(d.callback)})})}var h=a("node-uuid"),i=a("./kuzzleDataCollection");b.exports=Kuzzle=function(b,c,d){var e=this;if(!(this instanceof Kuzzle))return new Kuzzle(b,c,d);if(d||"function"!=typeof c||(d=c,c=null),!b||""===b)throw new Error("URL argument missing");return Object.defineProperties(this,{collections:{value:{},writable:!0},connectCB:{value:d},eventListeners:{value:{connected:{lastEmitted:null,listeners:[]},error:{lastEmitted:null,listeners:[]},disconnected:{lastEmitted:null,listeners:[]},reconnected:{lastEmitted:null,listeners:[]},jwtTokenExpired:{lastEmitted:null,listeners:[]}}},eventTimeout:{value:200},io:{value:null,writable:!0},queuing:{value:!1,writable:!0},requestHistory:{value:{},writable:!0},socket:{value:null,writable:!0},state:{value:"initializing",writable:!0},subscriptions:{value:{pending:{}},writable:!0},autoReconnect:{value:c&&"boolean"==typeof c.autoReconnect?c.autoReconnect:!0,enumerable:!0},defaultIndex:{value:c&&"string"==typeof c.defaultIndex?c.defaultIndex:void 0,writable:!0,enumerable:!0},reconnectionDelay:{value:c&&"number"==typeof c.reconnectionDelay?c.reconnectionDelay:1e3,enumerable:!0},url:{value:b,enumerable:!0},autoQueue:{value:!1,enumerable:!0,writable:!0},autoReplay:{value:!1,enumerable:!0,writable:!0},autoResubscribe:{value:!0,enumerable:!0,writable:!0},headers:{value:{},enumerable:!0,writable:!0},metadata:{value:{},enumerable:!0,writable:!0},offlineQueue:{value:[],enumerable:!0,writable:!0},queueFilter:{value:null,enumerable:!0,writable:!0},queueMaxSize:{value:500,enumerable:!0,writable:!0},queueTTL:{value:12e4,enumerable:!0,writable:!0},replayInterval:{value:10,enumerable:!0,writable:!0},jwtToken:{value:void 0,enumerable:!0,writable:!0}}),"undefined"!=typeof window&&window.io?this.io=window.io:this.io=a("socket.io-client"),c&&(Object.keys(c).forEach(function(a){e.hasOwnProperty(a)&&Object.getOwnPropertyDescriptor(e,a).writable&&(e[a]=c[a])}),"auto"===c.offlineMode&&this.autoReconnect&&(this.autoQueue=this.autoReplay=this.autoResubscribe=!0)),Object.defineProperty(this,"isValid",{value:function(){if("disconnected"===e.state)throw new Error("This Kuzzle object has been invalidated. Did you try to access it after a disconnect call?")}}),Object.defineProperty(this,"addHeaders",{value:function(a,b){return Object.keys(b).forEach(function(c){a[c]||(a[c]=b[c])}),a}}),Object.defineProperty(this,"callbackRequired",{value:function(a,b){if(!b||"function"!=typeof b)throw new Error(a+": a callback argument is required for read queries")}}),Object.defineProperty(this,"emitEvent",{value:function(a){var b=Date.now(),c=Array.prototype.slice.call(arguments,1);return this.eventListeners[a].lastEmitted&&this.eventListeners[a].lastEmitted>=b-this.eventTimeout?!1:(this.eventListeners[a].listeners.forEach(function(a){a.fn.apply(this,c)}),void(this.eventListeners[a].lastEmitted=b))}}),c&&c.connect&&"auto"!==c.connect?this.state="ready":this.connect(),this.bluebird?this.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["getAllStatistics","getServerInfo","getStatistics","listCollections","listIndexes","login","logout","now","query","checkToken","whoAmI"];return d&&-1!==e.indexOf(a)}}):this},Kuzzle.prototype.connect=function(){var a=this;return-1===["initializing","ready","disconnected","error","offline"].indexOf(this.state)?(a.connectCB&&a.connectCB(null,a),a):(a.state="connecting",a.socket=a.io(a.url,{reconnection:a.autoReconnect,reconnectionDelay:a.reconnectionDelay,forceNew:!0}),a.socket.once("connect",function(){a.state="connected",g.call(a),f.call(a),a.emitEvent("connected"),a.connectCB&&a.connectCB(null,a)}),a.socket.on("connect_error",function(b){a.state="error",a.emitEvent("error"),a.connectCB&&a.connectCB(b)}),a.socket.on("disconnect",function(){a.state="offline",a.autoReconnect||a.disconnect(),a.autoQueue&&(a.queuing=!0),a.emitEvent("disconnected")}),a.socket.on("reconnect",function(){var b=function(){a.autoResubscribe&&g.call(a),a.autoReplay&&(d.call(a),f.call(a)),a.emitEvent("reconnected")};a.state="connected",a.jwtToken?a.checkToken(a.jwtToken,function(c,d){(c||!d.valid)&&(a.jwtToken=void 0,a.emitEvent("jwtTokenExpired")),b()}):b()}),this)},Kuzzle.prototype.setJwtToken=function(a){return this.jwtToken=a,this},Kuzzle.prototype.getJwtToken=function(){return this.jwtToken},Kuzzle.prototype.login=function(a,b,c,d){var e=this,f={strategy:a};return d||"function"!=typeof c||(d=c,c=null),Object.keys(b).forEach(function(a){f[a]=b[a]}),-1!==["number","string"].indexOf(typeof c)&&(f.expiresIn=c),this.query({controller:"auth",action:"login"},{body:f},{queuable:!1},function(a,b){if(null===a)e.setJwtToken(b.result.jwt),g.call(e),"function"==typeof d&&d(null,e);else{if("function"!=typeof d)throw new Error(a.message);d(a)}}),e},Kuzzle.prototype.logout=function(a){var b=this,c={action:"logout",controller:"auth",requestId:h.v4(),body:{}};return this.query({controller:"auth",action:"logout"},c,{queuable:!1},function(c){null===c?(b.setJwtToken(void 0),"function"==typeof a&&a(null,b)):"function"==typeof a&&a(c)}),b},Kuzzle.prototype.checkToken=function(a,b){var c=this,d={body:{token:a}};return this.callbackRequired("Kuzzle.checkToken",b),this.query({controller:"auth",action:"checkToken"},d,{},b),c},Kuzzle.prototype.whoAmI=function(a){var b=this;return this.callbackRequired("Kuzzle.whoAmI",a),this.query({controller:"auth",action:"getCurrentUser"},{},{},a),b},Kuzzle.prototype.addListener=function(a,b){var c,d=Object.keys(this.eventListeners),e=typeof b;if(this.isValid(),-1===d.indexOf(a))throw new Error("["+a+"] is not a known event. Known events: "+d.toString());if("function"!==e)throw new Error("Invalid listener type: expected a function, got a "+e);return c=h.v1(),this.eventListeners[a].listeners.push({id:c,fn:b}),c},Kuzzle.prototype.getAllStatistics=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.getAllStatistics",b),this.query({controller:"admin",action:"getAllStats"},{},a,function(a,c){return a?b(a):void b(null,c.result.hits)}),this},Kuzzle.prototype.getStatistics=function(a,b,c){var d;return c||(1===arguments.length?(c=arguments[0],b=null,a=null):(c=arguments[1],"object"==typeof arguments[0]?(b=arguments[0],a=null):(a=arguments[0],b=null))),d=function(b,d){return b?c(b):void(a?c(null,d.result.hits):c(null,[d.result]))},this.callbackRequired("Kuzzle.getStatistics",c),a?this.query({controller:"admin",action:"getStats"},{body:{startTime:a}},b,d):this.query({controller:"admin",action:"getLastStats"},{},b,d),this},Kuzzle.prototype.dataCollectionFactory=function(a,b,c){if(this.isValid(),1===arguments.length?(b=arguments[0],a=this.defaultIndex):2===arguments.length&&"object"==typeof b&&(c=b,b=a,a=this.defaultIndex),!a)throw new Error("Unable to create a new data collection object: no index specified");return this.collections[a]||(this.collections[a]={}),this.collections[a][b]||(this.collections[a][b]=new i(this,a,b,c)),this.collections[a][b]},Kuzzle.prototype.flushQueue=function(){return this.offlineQueue=[],this},Kuzzle.prototype.listCollections=function(){var a,b,c,d="all",e=Array.prototype.slice.call(arguments);if(e.forEach(function(d){switch(typeof d){case"string":a=d;break;case"object":b=d;break;case"function":c=d}}),!a){if(!this.defaultIndex)throw new Error("Kuzzle.listCollections: index required");a=this.defaultIndex}return this.callbackRequired("Kuzzle.listCollections",c),b&&b.type&&(d=b.type),this.query({index:a,controller:"read",action:"listCollections"},{body:{type:d}},b,function(a,b){return a?c(a):c(null,b.result.collections)}),this},Kuzzle.prototype.listIndexes=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.listIndexes",b),this.query({controller:"read",action:"listIndexes"},{},a,function(a,c){return a?b(a):b(null,c.result.indexes)}),this},Kuzzle.prototype.disconnect=function(){var a;this.logout(),this.state="disconnected",this.socket.close(),this.socket=null;for(a in this.collections)this.collections.hasOwnProperty(a)&&delete this.collections[a]},Kuzzle.prototype.getServerInfo=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.getServerInfo",b),this.query({controller:"read",action:"serverInfo"},{},a,function(a,c){return a?b(a):void b(null,c.result.serverInfo)}),this},Kuzzle.prototype.now=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.now",b),this.query({controller:"read",action:"now"},{},a,function(a,c){return a?b(a):void b(null,c.result.now)}),this},Kuzzle.prototype.query=function(a,b,c,f){var g,i={action:a.action,controller:a.controller,metadata:this.metadata},j=this;if(this.isValid(),f||"function"!=typeof c||(f=c,c=null),c&&(c.metadata&&Object.keys(c.metadata).forEach(function(a){i.metadata[a]=c.metadata[a]}),c.queuable===!1&&"offline"===j.state))return j;b.metadata&&Object.keys(b.metadata).forEach(function(a){i.metadata[a]=b.metadata[a]});for(g in b)"metadata"!==g&&b.hasOwnProperty(g)&&(i[g]=b[g]);return i=j.addHeaders(i,this.headers),void 0!==j.jwtToken&&"auth"!==i.controller&&"checkToken"!==i.action&&(i.headers=i.headers||{},i.headers.authorization="Bearer "+j.jwtToken),a.collection&&(i.collection=a.collection),a.index&&(i.index=a.index),i.requestId||(i.requestId=h.v4()),"connected"===j.state||c&&c.queuable===!1?"connected"===j.state?e.call(this,i,f):f&&f(new Error("Unable to execute request: not connected to a Kuzzle server.\nDiscarded request: "+i)):(j.queuing||-1!==["initializing","connecting"].indexOf(j.state))&&(d.call(this,i,f),j.queueFilter?j.queueFilter(i)&&j.offlineQueue.push({ts:Date.now(),query:i,cb:f}):j.offlineQueue.push({ts:Date.now(),query:i,cb:f})),j},Kuzzle.prototype.removeAllListeners=function(a){var b=Object.keys(this.eventListeners),c=this;if(a){if(-1===b.indexOf(a))throw new Error("["+a+"] is not a known event. Known events: "+b.toString());this.eventListeners[a].listeners=[]}else b.forEach(function(a){c.eventListeners[a].listeners=[]})},Kuzzle.prototype.removeListener=function(a,b){var c=Object.keys(this.eventListeners),d=this;if(-1===c.indexOf(a))throw new Error("["+a+"] is not a known event. Known events: "+c.toString());this.eventListeners[a].listeners.forEach(function(c,e){c.id===b&&d.eventListeners[a].listeners.splice(e,1)})},Kuzzle.prototype.replayQueue=function(){return"offline"===this.state||this.autoReplay||(d.call(this),f.call(this)),this},Kuzzle.prototype.setDefaultIndex=function(a){if("string"!=typeof a)throw new Error("Invalid default index: ["+a+"] (an index name is expected)");if(0===a.length)throw new Error("Cannot set an empty index as the default index");return this.defaultIndex=a,this},Kuzzle.prototype.setHeaders=function(a,b){var c=this;if("object"!=typeof a||Array.isArray(a))throw new Error("Expected a content object, received a "+typeof a);return b?c.headers=a:Object.keys(a).forEach(function(b){c.headers[b]=a[b]}),c},Kuzzle.prototype.startQueuing=function(){return"offline"!==this.state||this.autoQueue||(this.queuing=!0),this},Kuzzle.prototype.stopQueuing=function(){return"offline"!==this.state||this.autoQueue||(this.queuing=!1),this}},{"./kuzzleDataCollection":3,"node-uuid":1,"socket.io-client":void 0}],3:[function(a,b,c){function d(a,b,c){if(!b||!c)throw new Error("The KuzzleDataCollection object constructor needs an index and a collection arguments");return Object.defineProperties(this,{collection:{value:c,enumerable:!0},index:{value:b,enumerable:!0},kuzzle:{value:a,enumerable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0}}),Object.defineProperty(this,"buildQueryArgs",{value:function(a,b){return{controller:a,action:b,collection:this.collection,index:this.index}}}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["publishMessage","setHeaders","subscribe"];return d&&-1===e.indexOf(a)}}):this}var e=a("./kuzzleDocument"),f=a("./kuzzleDataMapping"),g=a("./kuzzleRoom");d.prototype.advancedSearch=function(a,b,c){var d,f=this;return c||"function"!=typeof b||(c=b,b=null),f.kuzzle.callbackRequired("KuzzleDataCollection.advancedSearch",c),d=f.kuzzle.addHeaders({body:a},this.headers),f.kuzzle.query(this.buildQueryArgs("read","search"),d,b,function(a,b){var d=[];return a?c(a):(b.result.hits.forEach(function(a){var b=new e(f,a._id,a._source);b.version=a._version,d.push(b)}),void c(null,{total:b.result.total,documents:d}))}),this},d.prototype.count=function(a,b,c){var d;return c||"function"!=typeof b||(c=b,b=null),this.kuzzle.callbackRequired("KuzzleDataCollection.count",c),d=this.kuzzle.addHeaders({body:a},this.headers),this.kuzzle.query(this.buildQueryArgs("read","count"),d,b,function(a,b){return a?c(a):void c(null,b.result.count)}),this},d.prototype.create=function(a,b){var c={};return b||"function"!=typeof a||(b=a,a=null),c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("write","createCollection"),c,a,b),this},d.prototype.createDocument=function(a,b,c,d){var f=this,g={},h="create";return a&&"string"!=typeof a&&(d=c,c=b,b=a,a=null),d||"function"!=typeof c||(d=c,c=null),b instanceof e?g=b.toJSON():g.body=b,c&&(h=c.updateIfExist?"createOrReplace":"create"),a&&(g._id=a),g.persist=!0,g=f.kuzzle.addHeaders(g,f.headers),d?f.kuzzle.query(this.buildQueryArgs("write",h),g,c,function(a,b){var c;return a?d(a):(c=new e(f,b.result._id,b.result._source),c.version=b.result._version,void d(null,c))}):f.kuzzle.query(this.buildQueryArgs("write",h),g,c),this},d.prototype["delete"]=function(a,b){var c={};return b||"function"!=typeof a||(b=a,a=null),c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("admin","deleteCollection"),c,a,b),this},d.prototype.deleteDocument=function(a,b,c){var d,e={};return"string"==typeof a?(e._id=a,d="delete"):(e.body=a,d="deleteByQuery"),c||"function"!=typeof b||(c=b,b=null),e=this.kuzzle.addHeaders(e,this.headers),c?this.kuzzle.query(this.buildQueryArgs("write",d),e,b,function(a,b){return a?c(a):void("delete"===d?c(null,[b.result._id]):c(null,b.result.ids))}):this.kuzzle.query(this.buildQueryArgs("write",d),e,b),this},d.prototype.fetchDocument=function(a,b,c){var d={_id:a},f=this;return c||"function"!=typeof b||(c=b,b=null),f.kuzzle.callbackRequired("KuzzleDataCollection.fetch",c),d=f.kuzzle.addHeaders(d,this.headers),f.kuzzle.query(this.buildQueryArgs("read","get"),d,b,function(a,b){var d;return a?c(a):(d=new e(f,b.result._id,b.result._source),d.version=b.result._version,void c(null,d))}),this},d.prototype.fetchAllDocuments=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.kuzzle.callbackRequired("KuzzleDataCollection.fetchAll",b),this.advancedSearch({},a,b),this},d.prototype.getMapping=function(a,b){var c;return b||"function"!=typeof a||(b=a,a=null),this.kuzzle.callbackRequired("KuzzleDataCollection.getMapping",b),c=new f(this),c.refresh(a,b),this},d.prototype.publishMessage=function(a,b){var c={};return a instanceof e?c=a.toJSON():c.body=a,c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("write","publish"),c,b),this},d.prototype.replaceDocument=function(a,b,c,d){var f=this,g={_id:a,body:b};return d||"function"!=typeof c||(d=c,c=null),g=f.kuzzle.addHeaders(g,this.headers),d?f.kuzzle.query(this.buildQueryArgs("write","createOrReplace"),g,c,function(a,b){var c;return a?d(a):(c=new e(f,b.result._id,b.result._source),c.version=b.result._version,void d(null,c))}):f.kuzzle.query(this.buildQueryArgs("write","createOrReplace"),g,c),this},d.prototype.subscribe=function(a,b,c){var d;return c||"function"!=typeof b||(c=b,b=null),this.kuzzle.callbackRequired("KuzzleDataCollection.subscribe",c),d=new g(this,b),d.renew(a,c)},d.prototype.truncate=function(a,b){var c={};return b||"function"!=typeof a||(b=a,a=null),c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("admin","truncateCollection"),c,a,b),this},d.prototype.updateDocument=function(a,b,c,d){var f={_id:a,body:b},g=this;return d||"function"!=typeof c||(d=c,c=null),f=g.kuzzle.addHeaders(f,this.headers),d?g.kuzzle.query(this.buildQueryArgs("write","update"),f,c,function(a,b){var c;return a?d(a):(c=new e(g,b.result._id),void c.refresh(d))}):g.kuzzle.query(this.buildQueryArgs("write","update"),f,c),g},d.prototype.documentFactory=function(a,b){return new e(this,a,b)},d.prototype.roomFactory=function(a){return new g(this,a)},d.prototype.dataMappingFactory=function(a){return new f(this,a)},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{"./kuzzleDataMapping":4,"./kuzzleDocument":5,"./kuzzleRoom":6}],4:[function(a,b,c){function d(a,b){return Object.defineProperties(this,{collection:{value:a,eunmerable:!0},kuzzle:{value:a.kuzzle,enumerable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0},mapping:{value:b||{},enumerable:!0,writable:!0}}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["set","setHeaders"];return d&&-1===e.indexOf(a)}}):this}d.prototype.apply=function(a,b){var c=this,d=this.kuzzle.addHeaders({body:{properties:this.mapping}},this.headers);return b||"function"!=typeof a||(b=a,a=null),c.kuzzle.query(this.collection.buildQueryArgs("admin","updateMapping"),d,a,function(d){return d?b?b(d):!1:void c.refresh(a,b)}),this},d.prototype.refresh=function(a,b){var c=this,d=this.kuzzle.addHeaders({},this.headers);return b||"function"!=typeof a||(b=a,a=null),this.kuzzle.query(this.collection.buildQueryArgs("admin","getMapping"),d,a,function(a,d){return a?b?b(a):!1:d.result[c.collection.index]?d.result[c.collection.index].mappings[c.collection.collection]?(c.mapping=d.result[c.collection.index].mappings[c.collection.collection].properties,void(b&&b(null,c))):b?b(new Error("No mapping found for collection "+c.collection.collection)):!1:b?b(new Error("No mapping found for index "+c.collection.index)):!1}),this},d.prototype.set=function(a,b){return this.mapping[a]=b,this},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{}],5:[function(a,b,c){function d(a,b,c){return Object.defineProperties(this,{collection:{value:a.collection,enumerable:!0},dataCollection:{value:a,enumerable:!0},kuzzle:{value:a.kuzzle,enumerable:!0},id:{value:void 0,enumerable:!0,writable:!0},content:{value:{},writable:!0,enumerable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0},version:{value:void 0,enumerable:!0,writable:!0}}),!c&&b&&"object"==typeof b&&(c=b,b=null),c&&(c._version&&(this.version=c._version,delete c._version),this.setContent(c,!0)),b&&Object.defineProperty(this,"id",{value:b,enumerable:!0}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["delete","refresh","save"];return d&&-1!==e.indexOf(a)}}):this}d.prototype.toJSON=function(){var a={};return this.id&&(a._id=this.id),a.body=this.content,a._version=this.version,a=this.kuzzle.addHeaders(a,this.headers)},d.prototype.toString=function(){return JSON.stringify(this.toJSON())},d.prototype["delete"]=function(a,b){var c=this;if(b||"function"!=typeof a||(b=a,a=null),!this.id)throw new Error("KuzzleDocument.delete: cannot delete a document without a document ID");return b?this.kuzzle.query(this.dataCollection.buildQueryArgs("write","delete"),this.toJSON(),a,function(a){return a?b(a):void b(null,c)}):this.kuzzle.query(this.dataCollection.buildQueryArgs("write","delete"),this.toJSON(),a),this},d.prototype.refresh=function(a,b){var c=this;if(b||"function"!=typeof a||(b=a,a=null),!c.id)throw new Error("KuzzleDocument.refresh: cannot retrieve a document if no ID has been provided");this.kuzzle.callbackRequired("KuzzleDocument.refresh",b),c.kuzzle.query(c.dataCollection.buildQueryArgs("read","get"),{_id:c.id},a,function(a,e){var f;return a?b(a):(f=new d(c.dataCollection,c.id,e.result._source),f.version=e.result._version,void b(null,f))})},d.prototype.save=function(a,b){var c=this.toJSON(),d=this;return a&&void 0===b&&"function"==typeof a&&(b=a,a=null),d.kuzzle.query(this.dataCollection.buildQueryArgs("write","createOrReplace"),c,a,function(a,c){return a?b?b(a):!1:(d.id=c.result._id,d.version=c.result._version,void(b&&b(null,d)))}),d},d.prototype.publish=function(a){var b=this.toJSON();return this.kuzzle.query(this.dataCollection.buildQueryArgs("write","publish"),b,a),this},d.prototype.setContent=function(a,b){var c=this;return b?this.content=a:Object.keys(a).forEach(function(b){c.content[b]=a[b]}),this},d.prototype.subscribe=function(a,b){var c;if(a&&!b&&"function"==typeof a&&(b=a,a=null),this.kuzzle.callbackRequired("KuzzleDocument.subscribe",b),!this.id)throw new Error("KuzzleDocument.subscribe: cannot subscribe to a document if no ID has been provided");return c={ids:{values:[this.id]}},this.dataCollection.subscribe(c,a,b)},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{}],6:[function(a,b,c){function d(a,b){return Object.defineProperties(this,{callback:{value:null,writable:!0},channel:{value:null,writable:!0},id:{value:g.v4()},lastRenewal:{value:null,writable:!0},notifier:{value:null,writable:!0},queue:{value:[],writable:!0},renewalDelay:{value:500},scope:{value:b&&b.scope?b.scope:"all"},state:{value:b&&b.state?b.state:"done"},subscribing:{value:!1,writable:!0},users:{value:b&&b.users?b.users:"none"},collection:{value:a,enumerable:!0},kuzzle:{value:a.kuzzle,enumerable:!0},filters:{value:null,enumerable:!0,writable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0},metadata:{value:b&&b.metadata?b.metadata:{},enumerable:!0,writable:!0},roomId:{value:null,enumerable:!0,writable:!0},subscribeToSelf:{value:b&&"boolean"==typeof b.subscribeToSelf?b.subscribeToSelf:!0,enumerable:!0,writable:!0}}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["count"];return d&&-1!==e.indexOf(a)}}):this}function e(a){return a.error?this.callback(a.error):"jwtTokenExpired"===a.action?(this.kuzzle.jwtToken=void 0,this.kuzzle.emitEvent("jwtTokenExpired")):void(this.kuzzle.requestHistory[a.requestId]?(this.subscribeToSelf&&this.callback(null,a),delete this.kuzzle.requestHistory[a.requestId]):this.callback(null,a))}function f(){for(var a;this.queue.length>0;)a=this.queue.shift(),this[a.action].apply(this,a.args)}var g=a("node-uuid");d.prototype.count=function(a){var b;return this.kuzzle.callbackRequired("KuzzleRoom.count",a),b=this.kuzzle.addHeaders({body:{roomId:this.roomId}},this.headers),this.subscribing?(this.queue.push({action:"count",args:[a]}),this):(this.kuzzle.query(this.collection.buildQueryArgs("subscribe","count"),b,function(b,c){return b?a(b):void a(null,c.result.count)}),this)},d.prototype.renew=function(a,b){var c=Date.now(),d={scope:this.scope,state:this.state,users:this.users},g=this;return!b&&a&&"function"==typeof a&&(b=a,a=null),g.lastRenewal&&c-g.lastRenewal<=g.renewalDelay?g:(a&&(g.filters=a),"connected"!==g.kuzzle.state?(g.callback=b,g.kuzzle.subscriptions.pending[g.id]=g,g):g.subscribing?(g.queue.push({action:"renew",args:[a,b]}),g):(g.kuzzle.callbackRequired("KuzzleRoom.renew",b),g.unsubscribe(),g.roomId=null,g.subscribing=!0,g.callback=b,g.kuzzle.subscriptions.pending[g.id]=g,d.body=g.filters,d=g.kuzzle.addHeaders(d,this.headers),g.kuzzle.query(g.collection.buildQueryArgs("subscribe","on"),d,{metadata:g.metadata},function(a,b){if(delete g.kuzzle.subscriptions.pending[g.id],g.subscribing=!1,a)throw g.queue=[],new Error("Error during Kuzzle subscription: "+a.message);g.lastRenewal=c,g.roomId=b.result.roomId,g.channel=b.result.channel,g.kuzzle.subscriptions[g.roomId]||(g.kuzzle.subscriptions[g.roomId]={}),g.kuzzle.subscriptions[g.roomId][g.id]=g,g.notifier=e.bind(g),g.kuzzle.socket.on(g.channel,g.notifier),f.call(g)}),g))},d.prototype.unsubscribe=function(){var a,b=this,c=b.roomId;return b.subscribing?(b.queue.push({action:"unsubscribe",args:[]}),b):(c&&(b.kuzzle.socket.off(b.channel,this.notifier),1===Object.keys(b.kuzzle.subscriptions[c]).length?(delete b.kuzzle.subscriptions[c],0===Object.keys(b.kuzzle.subscriptions.pending).length?b.kuzzle.query(b.collection.buildQueryArgs("subscribe","off"),{body:{roomId:c}}):a=setInterval(function(){0===Object.keys(b.kuzzle.subscriptions.pending).length&&(b.kuzzle.subscriptions[c]||b.kuzzle.query(b.collection.buildQueryArgs("subscribe","off"),{body:{roomId:c}}),clearInterval(a))},100)):delete b.kuzzle.subscriptions[c][b.id],b.roomId=null),b)},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{"node-uuid":1}]},{},[2]); +!function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;gb;b++)0===(3&b)&&(a=4294967296*Math.random()),e[b]=a>>>((3&b)<<3)&255;return e},"undefined"!=typeof console&&console.warn&&console.warn("[SECURITY] node-uuid: crypto not usable, falling back to insecure Math.random()")}}function e(){if("function"==typeof a)try{var b=a("crypto").randomBytes;l=j=b&&function(){return b(16)},j()}catch(c){}}function f(a,b,c){var d=b&&c||0,e=0;for(b=b||[],a.toLowerCase().replace(/[0-9a-f]{2}/g,function(a){16>e&&(b[d+e++]=q[a])});16>e;)b[d+e++]=0;return b}function g(a,b){var c=b||0,d=p;return d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+"-"+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]+d[a[c++]]}function h(a,b,c){var d=b&&c||0,e=b||[];a=a||{};var f=null!=a.clockseq?a.clockseq:u,h=null!=a.msecs?a.msecs:(new Date).getTime(),i=null!=a.nsecs?a.nsecs:w+1,j=h-v+(i-w)/1e4;if(0>j&&null==a.clockseq&&(f=f+1&16383),(0>j||h>v)&&null==a.nsecs&&(i=0),i>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=h,w=i,u=f,h+=122192928e5;var k=(1e4*(268435455&h)+i)%4294967296;e[d++]=k>>>24&255,e[d++]=k>>>16&255,e[d++]=k>>>8&255,e[d++]=255&k;var l=h/4294967296*1e4&268435455;e[d++]=l>>>8&255,e[d++]=255&l,e[d++]=l>>>24&15|16,e[d++]=l>>>16&255,e[d++]=f>>>8|128,e[d++]=255&f;for(var m=a.node||t,n=0;6>n;n++)e[d+n]=m[n];return b?b:g(e)}function i(a,b,c){var d=b&&c||0;"string"==typeof a&&(b="binary"===a?new o(16):null,a=null),a=a||{};var e=a.random||(a.rng||j)();if(e[6]=15&e[6]|64,e[8]=63&e[8]|128,b)for(var f=0;16>f;f++)b[d+f]=e[f];return b||g(e)}var j,k,l,m,n;c?d():e();for(var o="function"==typeof Buffer?Buffer:Array,p=[],q={},r=0;256>r;r++)p[r]=(r+256).toString(16).substr(1),q[p[r]]=r;var s=j(),t=[1|s[0],s[1],s[2],s[3],s[4],s[5]],u=16383&(s[6]<<8|s[7]),v=0,w=0,x=i;x.v1=h,x.v4=i,x.parse=f,x.unparse=g,x.BufferClass=o,x._rng=j,x._mathRNG=k,x._nodeRNG=l,x._whatwgRNG=m,"undefined"!=typeof b&&b.exports?b.exports=x:"function"==typeof define&&define.amd?define(function(){return x}):(n=c.uuid,x.noConflict=function(){return c.uuid=n,x},c.uuid=x)}("undefined"!=typeof window?window:null)},{}],2:[function(a,b,c){function d(){var a=this,b=Date.now(),c=-1;a.queueTTL>0&&(a.offlineQueue.forEach(function(d,e){d.ts0&&a.offlineQueue.length>a.queueMaxSize&&a.offlineQueue.splice(0,a.offlineQueue.length-a.queueMaxSize)}function e(a,b){var c=Date.now(),d=this;(void 0!==d.jwtToken||b)&&d.socket.once(a.requestId,function(c){c.error&&"Token expired"===c.error.message&&(d.jwtToken=void 0,d.emitEvent("jwtTokenExpired",a,b)),b&&b(c.error,c)}),d.socket.emit("kuzzle",a),d.requestHistory[a.requestId]=c,Object.keys(d.requestHistory).forEach(function(a){d.requestHistory[a]0?(e.call(a,a.offlineQueue[0].query,a.offlineQueue[0].cb),a.offlineQueue.shift(),setTimeout(function(){f.call(a)},Math.max(0,a.replayInterval))):a.queuing=!1}function g(){var a=this;Object.keys(a.subscriptions).forEach(function(b){Object.keys(a.subscriptions[b]).forEach(function(c){var d=a.subscriptions[b][c];d.renew(d.callback)})})}var h=a("node-uuid"),i=a("./kuzzleDataCollection");b.exports=Kuzzle=function(b,c,d){var e=this;if(!(this instanceof Kuzzle))return new Kuzzle(b,c,d);if(d||"function"!=typeof c||(d=c,c=null),!b||""===b)throw new Error("URL argument missing");return Object.defineProperties(this,{collections:{value:{},writable:!0},connectCB:{value:d},eventListeners:{value:{connected:{lastEmitted:null,listeners:[]},error:{lastEmitted:null,listeners:[]},disconnected:{lastEmitted:null,listeners:[]},reconnected:{lastEmitted:null,listeners:[]},jwtTokenExpired:{lastEmitted:null,listeners:[]}}},eventTimeout:{value:200},io:{value:null,writable:!0},queuing:{value:!1,writable:!0},requestHistory:{value:{},writable:!0},socket:{value:null,writable:!0},state:{value:"initializing",writable:!0},subscriptions:{value:{pending:{}},writable:!0},autoReconnect:{value:c&&"boolean"==typeof c.autoReconnect?c.autoReconnect:!0,enumerable:!0},defaultIndex:{value:c&&"string"==typeof c.defaultIndex?c.defaultIndex:void 0,writable:!0,enumerable:!0},reconnectionDelay:{value:c&&"number"==typeof c.reconnectionDelay?c.reconnectionDelay:1e3,enumerable:!0},url:{value:b,enumerable:!0},autoQueue:{value:!1,enumerable:!0,writable:!0},autoReplay:{value:!1,enumerable:!0,writable:!0},autoResubscribe:{value:!0,enumerable:!0,writable:!0},headers:{value:{},enumerable:!0,writable:!0},metadata:{value:{},enumerable:!0,writable:!0},offlineQueue:{value:[],enumerable:!0,writable:!0},queueFilter:{value:null,enumerable:!0,writable:!0},queueMaxSize:{value:500,enumerable:!0,writable:!0},queueTTL:{value:12e4,enumerable:!0,writable:!0},replayInterval:{value:10,enumerable:!0,writable:!0},jwtToken:{value:void 0,enumerable:!0,writable:!0}}),"undefined"!=typeof window&&window.io?this.io=window.io:this.io=a("socket.io-client"),c&&(Object.keys(c).forEach(function(a){e.hasOwnProperty(a)&&Object.getOwnPropertyDescriptor(e,a).writable&&(e[a]=c[a])}),"auto"===c.offlineMode&&this.autoReconnect&&(this.autoQueue=this.autoReplay=this.autoResubscribe=!0)),Object.defineProperty(this,"isValid",{value:function(){if("disconnected"===e.state)throw new Error("This Kuzzle object has been invalidated. Did you try to access it after a disconnect call?")}}),Object.defineProperty(this,"addHeaders",{value:function(a,b){return Object.keys(b).forEach(function(c){a[c]||(a[c]=b[c])}),a}}),Object.defineProperty(this,"callbackRequired",{value:function(a,b){if(!b||"function"!=typeof b)throw new Error(a+": a callback argument is required for read queries")}}),Object.defineProperty(this,"emitEvent",{value:function(a){var b=Date.now(),c=Array.prototype.slice.call(arguments,1);return this.eventListeners[a].lastEmitted&&this.eventListeners[a].lastEmitted>=b-this.eventTimeout?!1:(this.eventListeners[a].listeners.forEach(function(a){a.fn.apply(this,c)}),void(this.eventListeners[a].lastEmitted=b))}}),c&&c.connect&&"auto"!==c.connect?this.state="ready":this.connect(),this.bluebird?this.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["getAllStatistics","getServerInfo","getStatistics","listCollections","listIndexes","login","logout","now","query","checkToken","whoAmI"];return d&&-1!==e.indexOf(a)}}):this},Kuzzle.prototype.connect=function(){var a=this;return-1===["initializing","ready","disconnected","error","offline"].indexOf(this.state)?(a.connectCB&&a.connectCB(null,a),a):(a.state="connecting",a.socket=a.io(a.url,{reconnection:a.autoReconnect,reconnectionDelay:a.reconnectionDelay,forceNew:!0}),a.socket.once("connect",function(){a.state="connected",g.call(a),f.call(a),a.emitEvent("connected"),a.connectCB&&a.connectCB(null,a)}),a.socket.on("connect_error",function(b){a.state="error",a.emitEvent("error"),a.connectCB&&a.connectCB(b)}),a.socket.on("disconnect",function(){a.state="offline",a.autoReconnect||a.disconnect(),a.autoQueue&&(a.queuing=!0),a.emitEvent("disconnected")}),a.socket.on("reconnect",function(){var b=function(){a.autoResubscribe&&g.call(a),a.autoReplay&&(d.call(a),f.call(a)),a.emitEvent("reconnected")};a.state="connected",a.jwtToken?a.checkToken(a.jwtToken,function(c,d){(c||!d.valid)&&(a.jwtToken=void 0,a.emitEvent("jwtTokenExpired")),b()}):b()}),this)},Kuzzle.prototype.setJwtToken=function(a){return this.jwtToken=a,this},Kuzzle.prototype.getJwtToken=function(){return this.jwtToken},Kuzzle.prototype.login=function(a,b,c,d){var e=this,f={strategy:a};return d||"function"!=typeof c||(d=c,c=null),Object.keys(b).forEach(function(a){f[a]=b[a]}),-1!==["number","string"].indexOf(typeof c)&&(f.expiresIn=c),this.query({controller:"auth",action:"login"},{body:f},{queuable:!1},function(a,b){if(null===a)e.setJwtToken(b.result.jwt),g.call(e),"function"==typeof d&&d(null,e);else{if("function"!=typeof d)throw new Error(a.message);d(a)}}),e},Kuzzle.prototype.logout=function(a){var b=this,c={action:"logout",controller:"auth",requestId:h.v4(),body:{}};return this.query({controller:"auth",action:"logout"},c,{queuable:!1},function(c){null===c?(b.setJwtToken(void 0),"function"==typeof a&&a(null,b)):"function"==typeof a&&a(c)}),b},Kuzzle.prototype.checkToken=function(a,b){var c=this,d={body:{token:a}};return this.callbackRequired("Kuzzle.checkToken",b),this.query({controller:"auth",action:"checkToken"},d,{},b),c},Kuzzle.prototype.whoAmI=function(a){var b=this;return this.callbackRequired("Kuzzle.whoAmI",a),this.query({controller:"auth",action:"getCurrentUser"},{},{},a),b},Kuzzle.prototype.addListener=function(a,b){var c,d=Object.keys(this.eventListeners),e=typeof b;if(this.isValid(),-1===d.indexOf(a))throw new Error("["+a+"] is not a known event. Known events: "+d.toString());if("function"!==e)throw new Error("Invalid listener type: expected a function, got a "+e);return c=h.v1(),this.eventListeners[a].listeners.push({id:c,fn:b}),c},Kuzzle.prototype.getAllStatistics=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.getAllStatistics",b),this.query({controller:"admin",action:"getAllStats"},{},a,function(a,c){return a?b(a):void b(null,c.result.hits)}),this},Kuzzle.prototype.getStatistics=function(a,b,c){var d;return c||(1===arguments.length?(c=arguments[0],b=null,a=null):(c=arguments[1],"object"==typeof arguments[0]?(b=arguments[0],a=null):(a=arguments[0],b=null))),d=function(b,d){return b?c(b):void(a?c(null,d.result.hits):c(null,[d.result]))},this.callbackRequired("Kuzzle.getStatistics",c),a?this.query({controller:"admin",action:"getStats"},{body:{startTime:a}},b,d):this.query({controller:"admin",action:"getLastStats"},{},b,d),this},Kuzzle.prototype.dataCollectionFactory=function(a,b,c){if(this.isValid(),1===arguments.length?(b=arguments[0],a=this.defaultIndex):2===arguments.length&&"object"==typeof b&&(c=b,b=a,a=this.defaultIndex),!a)throw new Error("Unable to create a new data collection object: no index specified");return this.collections[a]||(this.collections[a]={}),this.collections[a][b]||(this.collections[a][b]=new i(this,a,b,c)),this.collections[a][b]},Kuzzle.prototype.flushQueue=function(){return this.offlineQueue=[],this},Kuzzle.prototype.listCollections=function(){var a,b,c,d="all",e=Array.prototype.slice.call(arguments);if(e.forEach(function(d){switch(typeof d){case"string":a=d;break;case"object":b=d;break;case"function":c=d}}),!a){if(!this.defaultIndex)throw new Error("Kuzzle.listCollections: index required");a=this.defaultIndex}return this.callbackRequired("Kuzzle.listCollections",c),b&&b.type&&(d=b.type),this.query({index:a,controller:"read",action:"listCollections"},{body:{type:d}},b,function(a,b){return a?c(a):c(null,b.result.collections)}),this},Kuzzle.prototype.listIndexes=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.listIndexes",b),this.query({controller:"read",action:"listIndexes"},{},a,function(a,c){return a?b(a):b(null,c.result.indexes)}),this},Kuzzle.prototype.disconnect=function(){var a;this.logout(),this.state="disconnected",this.socket.close(),this.socket=null;for(a in this.collections)this.collections.hasOwnProperty(a)&&delete this.collections[a]},Kuzzle.prototype.getServerInfo=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.getServerInfo",b),this.query({controller:"read",action:"serverInfo"},{},a,function(a,c){return a?b(a):void b(null,c.result.serverInfo)}),this},Kuzzle.prototype.now=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.callbackRequired("Kuzzle.now",b),this.query({controller:"read",action:"now"},{},a,function(a,c){return a?b(a):void b(null,c.result.now)}),this},Kuzzle.prototype.query=function(a,b,c,f){var g,i={action:a.action,controller:a.controller,metadata:this.metadata},j=this;if(this.isValid(),f||"function"!=typeof c||(f=c,c=null),c&&(c.metadata&&Object.keys(c.metadata).forEach(function(a){i.metadata[a]=c.metadata[a]}),c.queuable===!1&&"offline"===j.state))return j;b.metadata&&Object.keys(b.metadata).forEach(function(a){i.metadata[a]=b.metadata[a]});for(g in b)"metadata"!==g&&b.hasOwnProperty(g)&&(i[g]=b[g]);return i=j.addHeaders(i,this.headers),void 0!==j.jwtToken&&"auth"!==i.controller&&"checkToken"!==i.action&&(i.headers=i.headers||{},i.headers.authorization="Bearer "+j.jwtToken),a.collection&&(i.collection=a.collection),a.index&&(i.index=a.index),i.requestId||(i.requestId=h.v4()),"connected"===j.state||c&&c.queuable===!1?"connected"===j.state?e.call(this,i,f):f&&f(new Error("Unable to execute request: not connected to a Kuzzle server.\nDiscarded request: "+i)):(j.queuing||-1!==["initializing","connecting"].indexOf(j.state))&&(d.call(this,i,f),j.queueFilter?j.queueFilter(i)&&j.offlineQueue.push({ts:Date.now(),query:i,cb:f}):j.offlineQueue.push({ts:Date.now(),query:i,cb:f})),j},Kuzzle.prototype.removeAllListeners=function(a){var b=Object.keys(this.eventListeners),c=this;if(a){if(-1===b.indexOf(a))throw new Error("["+a+"] is not a known event. Known events: "+b.toString());this.eventListeners[a].listeners=[]}else b.forEach(function(a){c.eventListeners[a].listeners=[]})},Kuzzle.prototype.removeListener=function(a,b){var c=Object.keys(this.eventListeners),d=this;if(-1===c.indexOf(a))throw new Error("["+a+"] is not a known event. Known events: "+c.toString());this.eventListeners[a].listeners.forEach(function(c,e){c.id===b&&d.eventListeners[a].listeners.splice(e,1)})},Kuzzle.prototype.replayQueue=function(){return"offline"===this.state||this.autoReplay||(d.call(this),f.call(this)),this},Kuzzle.prototype.setDefaultIndex=function(a){if("string"!=typeof a)throw new Error("Invalid default index: ["+a+"] (an index name is expected)");if(0===a.length)throw new Error("Cannot set an empty index as the default index");return this.defaultIndex=a,this},Kuzzle.prototype.setHeaders=function(a,b){var c=this;if("object"!=typeof a||Array.isArray(a))throw new Error("Expected a content object, received a "+typeof a);return b?c.headers=a:Object.keys(a).forEach(function(b){c.headers[b]=a[b]}),c},Kuzzle.prototype.startQueuing=function(){return"offline"!==this.state||this.autoQueue||(this.queuing=!0),this},Kuzzle.prototype.stopQueuing=function(){return"offline"!==this.state||this.autoQueue||(this.queuing=!1),this}},{"./kuzzleDataCollection":3,"node-uuid":1,"socket.io-client":void 0}],3:[function(a,b,c){function d(a,b,c){if(!b||!c)throw new Error("The KuzzleDataCollection object constructor needs an index and a collection arguments");return Object.defineProperties(this,{collection:{value:c,enumerable:!0},index:{value:b,enumerable:!0},kuzzle:{value:a,enumerable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0}}),Object.defineProperty(this,"buildQueryArgs",{value:function(a,b){return{controller:a,action:b,collection:this.collection,index:this.index}}}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["publishMessage","setHeaders","subscribe"];return d&&-1===e.indexOf(a)}}):this}var e=a("./kuzzleDocument"),f=a("./kuzzleDataMapping"),g=a("./kuzzleRoom");d.prototype.advancedSearch=function(a,b,c){var d,f=this;return c||"function"!=typeof b||(c=b,b=null),f.kuzzle.callbackRequired("KuzzleDataCollection.advancedSearch",c),d=f.kuzzle.addHeaders({body:a},this.headers),f.kuzzle.query(this.buildQueryArgs("read","search"),d,b,function(a,b){var d=[];return a?c(a):(b.result.hits.forEach(function(a){var b=new e(f,a._id,a._source);b.version=a._version,d.push(b)}),void c(null,{total:b.result.total,documents:d}))}),this},d.prototype.count=function(a,b,c){var d;return c||"function"!=typeof b||(c=b,b=null),this.kuzzle.callbackRequired("KuzzleDataCollection.count",c),d=this.kuzzle.addHeaders({body:a},this.headers),this.kuzzle.query(this.buildQueryArgs("read","count"),d,b,function(a,b){return a?c(a):void c(null,b.result.count)}),this},d.prototype.create=function(a,b){var c={};return b||"function"!=typeof a||(b=a,a=null),c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("write","createCollection"),c,a,b),this},d.prototype.createDocument=function(a,b,c,d){var f=this,g={},h="create";return a&&"string"!=typeof a&&(d=c,c=b,b=a,a=null),d||"function"!=typeof c||(d=c,c=null),b instanceof e?g=b.serialize():g.body=b,c&&(h=c.updateIfExist?"createOrReplace":"create"),a&&(g._id=a),g.persist=!0,g=f.kuzzle.addHeaders(g,f.headers),d?f.kuzzle.query(this.buildQueryArgs("write",h),g,c,function(a,b){var c;return a?d(a):(c=new e(f,b.result._id,b.result._source),c.version=b.result._version,void d(null,c))}):f.kuzzle.query(this.buildQueryArgs("write",h),g,c),this},d.prototype["delete"]=function(a,b){var c={};return b||"function"!=typeof a||(b=a,a=null),c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("admin","deleteCollection"),c,a,b),this},d.prototype.deleteDocument=function(a,b,c){var d,e={};return"string"==typeof a?(e._id=a,d="delete"):(e.body=a,d="deleteByQuery"),c||"function"!=typeof b||(c=b,b=null),e=this.kuzzle.addHeaders(e,this.headers),c?this.kuzzle.query(this.buildQueryArgs("write",d),e,b,function(a,b){return a?c(a):void("delete"===d?c(null,[b.result._id]):c(null,b.result.ids))}):this.kuzzle.query(this.buildQueryArgs("write",d),e,b),this},d.prototype.fetchDocument=function(a,b,c){var d={_id:a},f=this;return c||"function"!=typeof b||(c=b,b=null),f.kuzzle.callbackRequired("KuzzleDataCollection.fetch",c),d=f.kuzzle.addHeaders(d,this.headers),f.kuzzle.query(this.buildQueryArgs("read","get"),d,b,function(a,b){var d;return a?c(a):(d=new e(f,b.result._id,b.result._source),d.version=b.result._version,void c(null,d))}),this},d.prototype.fetchAllDocuments=function(a,b){return b||"function"!=typeof a||(b=a,a=null),this.kuzzle.callbackRequired("KuzzleDataCollection.fetchAll",b),this.advancedSearch({},a,b),this},d.prototype.getMapping=function(a,b){var c;return b||"function"!=typeof a||(b=a,a=null),this.kuzzle.callbackRequired("KuzzleDataCollection.getMapping",b),c=new f(this),c.refresh(a,b),this},d.prototype.publishMessage=function(a,b){var c={};return a instanceof e?c=a.serialize():c.body=a,c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("write","publish"),c,b),this},d.prototype.replaceDocument=function(a,b,c,d){var f=this,g={_id:a,body:b};return d||"function"!=typeof c||(d=c,c=null),g=f.kuzzle.addHeaders(g,this.headers),d?f.kuzzle.query(this.buildQueryArgs("write","createOrReplace"),g,c,function(a,b){var c;return a?d(a):(c=new e(f,b.result._id,b.result._source),c.version=b.result._version,void d(null,c))}):f.kuzzle.query(this.buildQueryArgs("write","createOrReplace"),g,c),this},d.prototype.subscribe=function(a,b,c){var d;return c||"function"!=typeof b||(c=b,b=null),this.kuzzle.callbackRequired("KuzzleDataCollection.subscribe",c),d=new g(this,b),d.renew(a,c)},d.prototype.truncate=function(a,b){var c={};return b||"function"!=typeof a||(b=a,a=null),c=this.kuzzle.addHeaders(c,this.headers),this.kuzzle.query(this.buildQueryArgs("admin","truncateCollection"),c,a,b),this},d.prototype.updateDocument=function(a,b,c,d){var f={_id:a,body:b},g=this;return d||"function"!=typeof c||(d=c,c=null),f=g.kuzzle.addHeaders(f,this.headers),d?g.kuzzle.query(this.buildQueryArgs("write","update"),f,c,function(a,b){var c;return a?d(a):(c=new e(g,b.result._id),void c.refresh(d))}):g.kuzzle.query(this.buildQueryArgs("write","update"),f,c),g},d.prototype.documentFactory=function(a,b){return new e(this,a,b)},d.prototype.roomFactory=function(a){return new g(this,a)},d.prototype.dataMappingFactory=function(a){return new f(this,a)},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{"./kuzzleDataMapping":4,"./kuzzleDocument":5,"./kuzzleRoom":6}],4:[function(a,b,c){function d(a,b){return Object.defineProperties(this,{collection:{value:a,eunmerable:!0},kuzzle:{value:a.kuzzle,enumerable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0},mapping:{value:b||{},enumerable:!0,writable:!0}}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["set","setHeaders"];return d&&-1===e.indexOf(a)}}):this}d.prototype.apply=function(a,b){var c=this,d=this.kuzzle.addHeaders({body:{properties:this.mapping}},this.headers);return b||"function"!=typeof a||(b=a,a=null),c.kuzzle.query(this.collection.buildQueryArgs("admin","updateMapping"),d,a,function(d){return d?b?b(d):!1:void c.refresh(a,b)}),this},d.prototype.refresh=function(a,b){var c=this,d=this.kuzzle.addHeaders({},this.headers);return b||"function"!=typeof a||(b=a,a=null),this.kuzzle.query(this.collection.buildQueryArgs("admin","getMapping"),d,a,function(a,d){return a?b?b(a):!1:d.result[c.collection.index]?d.result[c.collection.index].mappings[c.collection.collection]?(c.mapping=d.result[c.collection.index].mappings[c.collection.collection].properties,void(b&&b(null,c))):b?b(new Error("No mapping found for collection "+c.collection.collection)):!1:b?b(new Error("No mapping found for index "+c.collection.index)):!1}),this},d.prototype.set=function(a,b){return this.mapping[a]=b,this},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{}],5:[function(a,b,c){function d(a,b,c){return Object.defineProperties(this,{collection:{value:a.collection,enumerable:!0},dataCollection:{value:a,enumerable:!0},kuzzle:{value:a.kuzzle,enumerable:!0},id:{value:void 0,enumerable:!0,writable:!0},content:{value:{},writable:!0,enumerable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0},version:{value:void 0,enumerable:!0,writable:!0}}),!c&&b&&"object"==typeof b&&(c=b,b=null),c&&(c._version&&(this.version=c._version,delete c._version),this.setContent(c,!0)),b&&Object.defineProperty(this,"id",{value:b,enumerable:!0}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["delete","refresh","save"];return d&&-1!==e.indexOf(a)}}):this}d.prototype.serialize=function(){var a={};return this.id&&(a._id=this.id),a.body=this.content,a._version=this.version,a=this.kuzzle.addHeaders(a,this.headers)},d.prototype.toString=function(){return JSON.stringify(this.serialize())},d.prototype["delete"]=function(a,b){var c=this;if(b||"function"!=typeof a||(b=a,a=null),!this.id)throw new Error("KuzzleDocument.delete: cannot delete a document without a document ID");return b?this.kuzzle.query(this.dataCollection.buildQueryArgs("write","delete"),this.serialize(),a,function(a){return a?b(a):void b(null,c)}):this.kuzzle.query(this.dataCollection.buildQueryArgs("write","delete"),this.serialize(),a),this},d.prototype.refresh=function(a,b){var c=this;if(b||"function"!=typeof a||(b=a,a=null),!c.id)throw new Error("KuzzleDocument.refresh: cannot retrieve a document if no ID has been provided");this.kuzzle.callbackRequired("KuzzleDocument.refresh",b),c.kuzzle.query(c.dataCollection.buildQueryArgs("read","get"),{_id:c.id},a,function(a,e){var f;return a?b(a):(f=new d(c.dataCollection,c.id,e.result._source),f.version=e.result._version,void b(null,f))})},d.prototype.save=function(a,b){var c=this.serialize(),d=this;return a&&void 0===b&&"function"==typeof a&&(b=a,a=null),d.kuzzle.query(this.dataCollection.buildQueryArgs("write","createOrReplace"),c,a,function(a,c){return a?b?b(a):!1:(d.id=c.result._id,d.version=c.result._version,void(b&&b(null,d)))}),d},d.prototype.publish=function(a){var b=this.serialize();return this.kuzzle.query(this.dataCollection.buildQueryArgs("write","publish"),b,a),this},d.prototype.setContent=function(a,b){var c=this;return b?this.content=a:Object.keys(a).forEach(function(b){c.content[b]=a[b]}),this},d.prototype.subscribe=function(a,b){var c;if(a&&!b&&"function"==typeof a&&(b=a,a=null),this.kuzzle.callbackRequired("KuzzleDocument.subscribe",b),!this.id)throw new Error("KuzzleDocument.subscribe: cannot subscribe to a document if no ID has been provided");return c={ids:{values:[this.id]}},this.dataCollection.subscribe(c,a,b)},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{}],6:[function(a,b,c){function d(a,b){return Object.defineProperties(this,{callback:{value:null,writable:!0},channel:{value:null,writable:!0},id:{value:g.v4()},lastRenewal:{value:null,writable:!0},notifier:{value:null,writable:!0},queue:{value:[],writable:!0},renewalDelay:{value:500},scope:{value:b&&b.scope?b.scope:"all"},state:{value:b&&b.state?b.state:"done"},subscribing:{value:!1,writable:!0},users:{value:b&&b.users?b.users:"none"},collection:{value:a,enumerable:!0},kuzzle:{value:a.kuzzle,enumerable:!0},filters:{value:null,enumerable:!0,writable:!0},headers:{value:JSON.parse(JSON.stringify(a.headers)),enumerable:!0,writable:!0},metadata:{value:b&&b.metadata?b.metadata:{},enumerable:!0,writable:!0},roomId:{value:null,enumerable:!0,writable:!0},subscribeToSelf:{value:b&&"boolean"==typeof b.subscribeToSelf?b.subscribeToSelf:!0,enumerable:!0,writable:!0}}),this.kuzzle.bluebird?this.kuzzle.bluebird.promisifyAll(this,{suffix:"Promise",filter:function(a,b,c,d){var e=["count"];return d&&-1!==e.indexOf(a)}}):this}function e(a){return a.error?this.callback(a.error):"jwtTokenExpired"===a.action?(this.kuzzle.jwtToken=void 0,this.kuzzle.emitEvent("jwtTokenExpired")):void(this.kuzzle.requestHistory[a.requestId]?(this.subscribeToSelf&&this.callback(null,a),delete this.kuzzle.requestHistory[a.requestId]):this.callback(null,a))}function f(){for(var a;this.queue.length>0;)a=this.queue.shift(),this[a.action].apply(this,a.args)}var g=a("node-uuid");d.prototype.count=function(a){var b;return this.kuzzle.callbackRequired("KuzzleRoom.count",a),b=this.kuzzle.addHeaders({body:{roomId:this.roomId}},this.headers),this.subscribing?(this.queue.push({action:"count",args:[a]}),this):(this.kuzzle.query(this.collection.buildQueryArgs("subscribe","count"),b,function(b,c){return b?a(b):void a(null,c.result.count)}),this)},d.prototype.renew=function(a,b){var c=Date.now(),d={scope:this.scope,state:this.state,users:this.users},g=this;return!b&&a&&"function"==typeof a&&(b=a,a=null),g.lastRenewal&&c-g.lastRenewal<=g.renewalDelay?g:(a&&(g.filters=a),"connected"!==g.kuzzle.state?(g.callback=b,g.kuzzle.subscriptions.pending[g.id]=g,g):g.subscribing?(g.queue.push({action:"renew",args:[a,b]}),g):(g.kuzzle.callbackRequired("KuzzleRoom.renew",b),g.unsubscribe(),g.roomId=null,g.subscribing=!0,g.callback=b,g.kuzzle.subscriptions.pending[g.id]=g,d.body=g.filters,d=g.kuzzle.addHeaders(d,this.headers),g.kuzzle.query(g.collection.buildQueryArgs("subscribe","on"),d,{metadata:g.metadata},function(a,b){if(delete g.kuzzle.subscriptions.pending[g.id],g.subscribing=!1,a)throw g.queue=[],new Error("Error during Kuzzle subscription: "+a.message);g.lastRenewal=c,g.roomId=b.result.roomId,g.channel=b.result.channel,g.kuzzle.subscriptions[g.roomId]||(g.kuzzle.subscriptions[g.roomId]={}),g.kuzzle.subscriptions[g.roomId][g.id]=g,g.notifier=e.bind(g),g.kuzzle.socket.on(g.channel,g.notifier),f.call(g)}),g))},d.prototype.unsubscribe=function(){var a,b=this,c=b.roomId;return b.subscribing?(b.queue.push({action:"unsubscribe",args:[]}),b):(c&&(b.kuzzle.socket.off(b.channel,this.notifier),1===Object.keys(b.kuzzle.subscriptions[c]).length?(delete b.kuzzle.subscriptions[c],0===Object.keys(b.kuzzle.subscriptions.pending).length?b.kuzzle.query(b.collection.buildQueryArgs("subscribe","off"),{body:{roomId:c}}):a=setInterval(function(){0===Object.keys(b.kuzzle.subscriptions.pending).length&&(b.kuzzle.subscriptions[c]||b.kuzzle.query(b.collection.buildQueryArgs("subscribe","off"),{body:{roomId:c}}),clearInterval(a))},100)):delete b.kuzzle.subscriptions[c][b.id],b.roomId=null),b)},d.prototype.setHeaders=function(a,b){return this.kuzzle.setHeaders.call(this,a,b),this},b.exports=d},{"node-uuid":1}]},{},[2]); //# sourceMappingURL=kuzzle.min.map \ No newline at end of file diff --git a/dist/kuzzle.min.map b/dist/kuzzle.min.map index c779512f8..887e349ad 100644 --- a/dist/kuzzle.min.map +++ b/dist/kuzzle.min.map @@ -1 +1 @@ -{"version":3,"sources":["kuzzle.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length",1,"module","_window","setupBrowser","_crypto","crypto","msCrypto","_rng","getRandomValues","_rnds8","Uint8Array","_whatwgRNG","_rnds","Array","_mathRNG","Math","random","console","warn","setupNode","_rb","randomBytes","_nodeRNG","parse","buf","offset","ii","toLowerCase","replace","oct","_hexToByte","unparse","bth","_byteToHex","v1","options","b","clockseq","_clockseq","msecs","Date","getTime","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","node","_nodeId","v4","BufferClass","rnds","rng","_previousRoot","Buffer","toString","substr","_seedBytes","uuid","define","amd","noConflict","window",2,"cleanQueue","self","this","now","lastDocumentIndex","queueTTL","offlineQueue","forEach","query","index","ts","splice","queueMaxSize","emitRequest","request","cb","undefined","jwtToken","socket","once","requestId","response","error","message","emitEvent","emit","requestHistory","Object","keys","key","dequeue","shift","setTimeout","max","replayInterval","queuing","renewAllSubscriptions","subscriptions","roomId","subscriptionId","subscription","renew","callback","KuzzleDataCollection","Kuzzle","url","defineProperties","collections","value","writable","connectCB","eventListeners","connected","lastEmitted","listeners","disconnected","reconnected","jwtTokenExpired","eventTimeout","io","state","pending","autoReconnect","enumerable","defaultIndex","reconnectionDelay","autoQueue","autoReplay","autoResubscribe","headers","metadata","queueFilter","opt","hasOwnProperty","getOwnPropertyDescriptor","offlineMode","defineProperty","header","errorMessagePrefix","event","args","prototype","slice","arguments","listener","fn","apply","connect","bluebird","promisifyAll","suffix","filter","name","func","target","passes","whitelist","indexOf","reconnection","forceNew","on","disconnect","reconnect","checkToken","err","res","valid","setJwtToken","token","getJwtToken","login","strategy","credentials","expiresIn","controller","action","body","queuable","result","jwt","logout","callbackRequired","whoAmI","addListener","listenerId","knownEvents","listenerType","isValid","push","id","getAllStatistics","hits","getStatistics","timestamp","queryCB","startTime","dataCollectionFactory","collection","flushQueue","listCollections","collectionType","arg","type","listIndexes","indexes","close","getServerInfo","serverInfo","queryArgs","attr","object","meta","addHeaders","authorization","removeAllListeners","eventName","removeListener","replayQueue","setDefaultIndex","setHeaders","content","isArray","startQueuing","stopQueuing","./kuzzleDataCollection","node-uuid","socket.io-client",3,"kuzzle","JSON","stringify","blacklist","KuzzleDocument","KuzzleDataMapping","KuzzleRoom","advancedSearch","filters","buildQueryArgs","documents","doc","newDocument","_id","_source","version","_version","total","count","create","data","createDocument","document","toJSON","updateIfExist","persist","deleteDocument","ids","fetchDocument","documentId","fetchAllDocuments","getMapping","kuzzleMapping","refresh","publishMessage","replaceDocument","subscribe","room","truncate","updateDocument","documentFactory","roomFactory","dataMappingFactory","mapping","./kuzzleDataMapping","./kuzzleDocument","./kuzzleRoom",4,"kuzzleDataCollection","eunmerable","properties","mappings","set","field",5,"dataCollection","setContent","save","publish","values",6,"channel","lastRenewal","notifier","queue","renewalDelay","scope","subscribing","users","subscribeToSelf","notificationCallback","element","subscribeQuery","unsubscribe","bind","interval","off","setInterval","clearInterval"],"mappings":"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","file":"kuzzle.min.js"} \ No newline at end of file +{"version":3,"sources":["kuzzle.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length",1,"module","_window","setupBrowser","_crypto","crypto","msCrypto","_rng","getRandomValues","_rnds8","Uint8Array","_whatwgRNG","_rnds","Array","_mathRNG","Math","random","console","warn","setupNode","_rb","randomBytes","_nodeRNG","parse","buf","offset","ii","toLowerCase","replace","oct","_hexToByte","unparse","bth","_byteToHex","v1","options","b","clockseq","_clockseq","msecs","Date","getTime","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","node","_nodeId","v4","BufferClass","rnds","rng","_previousRoot","Buffer","toString","substr","_seedBytes","uuid","define","amd","noConflict","window",2,"cleanQueue","self","this","now","lastDocumentIndex","queueTTL","offlineQueue","forEach","query","index","ts","splice","queueMaxSize","emitRequest","request","cb","undefined","jwtToken","socket","once","requestId","response","error","message","emitEvent","emit","requestHistory","Object","keys","key","dequeue","shift","setTimeout","max","replayInterval","queuing","renewAllSubscriptions","subscriptions","roomId","subscriptionId","subscription","renew","callback","KuzzleDataCollection","Kuzzle","url","defineProperties","collections","value","writable","connectCB","eventListeners","connected","lastEmitted","listeners","disconnected","reconnected","jwtTokenExpired","eventTimeout","io","state","pending","autoReconnect","enumerable","defaultIndex","reconnectionDelay","autoQueue","autoReplay","autoResubscribe","headers","metadata","queueFilter","opt","hasOwnProperty","getOwnPropertyDescriptor","offlineMode","defineProperty","header","errorMessagePrefix","event","args","prototype","slice","arguments","listener","fn","apply","connect","bluebird","promisifyAll","suffix","filter","name","func","target","passes","whitelist","indexOf","reconnection","forceNew","on","disconnect","reconnect","checkToken","err","res","valid","setJwtToken","token","getJwtToken","login","strategy","credentials","expiresIn","controller","action","body","queuable","result","jwt","logout","callbackRequired","whoAmI","addListener","listenerId","knownEvents","listenerType","isValid","push","id","getAllStatistics","hits","getStatistics","timestamp","queryCB","startTime","dataCollectionFactory","collection","flushQueue","listCollections","collectionType","arg","type","listIndexes","indexes","close","getServerInfo","serverInfo","queryArgs","attr","object","meta","addHeaders","authorization","removeAllListeners","eventName","removeListener","replayQueue","setDefaultIndex","setHeaders","content","isArray","startQueuing","stopQueuing","./kuzzleDataCollection","node-uuid","socket.io-client",3,"kuzzle","JSON","stringify","blacklist","KuzzleDocument","KuzzleDataMapping","KuzzleRoom","advancedSearch","filters","buildQueryArgs","documents","doc","newDocument","_id","_source","version","_version","total","count","create","data","createDocument","document","serialize","updateIfExist","persist","deleteDocument","ids","fetchDocument","documentId","fetchAllDocuments","getMapping","kuzzleMapping","refresh","publishMessage","replaceDocument","subscribe","room","truncate","updateDocument","documentFactory","roomFactory","dataMappingFactory","mapping","./kuzzleDataMapping","./kuzzleDocument","./kuzzleRoom",4,"kuzzleDataCollection","eunmerable","properties","mappings","set","field",5,"dataCollection","setContent","save","publish","values",6,"channel","lastRenewal","notifier","queue","renewalDelay","scope","subscribing","users","subscribeToSelf","notificationCallback","element","subscribeQuery","unsubscribe","bind","interval","off","setInterval","clearInterval"],"mappings":"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","file":"kuzzle.min.js"} \ No newline at end of file diff --git a/src/kuzzleDataCollection.js b/src/kuzzleDataCollection.js index 7207d0a34..3ecb42455 100644 --- a/src/kuzzleDataCollection.js +++ b/src/kuzzleDataCollection.js @@ -213,7 +213,7 @@ KuzzleDataCollection.prototype.createDocument = function (id, document, options, } if (document instanceof KuzzleDocument) { - data = document.toJSON(); + data = document.serialize(); } else { data.body = document; } @@ -419,7 +419,7 @@ KuzzleDataCollection.prototype.publishMessage = function (document, options) { var data = {}; if (document instanceof KuzzleDocument) { - data = document.toJSON(); + data = document.serialize(); } else { data.body = document; } diff --git a/src/kuzzleDocument.js b/src/kuzzleDocument.js index e21788264..6d218b762 100644 --- a/src/kuzzleDocument.js +++ b/src/kuzzleDocument.js @@ -99,7 +99,7 @@ function KuzzleDocument(kuzzleDataCollection, documentId, content) { * * @return {object} JSON object representing this document */ -KuzzleDocument.prototype.toJSON = function () { +KuzzleDocument.prototype.serialize = function () { var data = {}; @@ -120,7 +120,7 @@ KuzzleDocument.prototype.toJSON = function () { * @return {string} serialized version of this object */ KuzzleDocument.prototype.toString = function () { - return JSON.stringify(this.toJSON()); + return JSON.stringify(this.serialize()); }; /** @@ -147,7 +147,7 @@ KuzzleDocument.prototype.delete = function (options, cb) { } if (cb) { - this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.toJSON(), options, function (err) { + this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.serialize(), options, function (err) { if (err) { return cb(err); } @@ -155,7 +155,7 @@ KuzzleDocument.prototype.delete = function (options, cb) { cb(null, self); }); } else { - this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.toJSON(), options); + this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'delete'), this.serialize(), options); } return this; @@ -213,7 +213,7 @@ KuzzleDocument.prototype.refresh = function (options, cb) { */ KuzzleDocument.prototype.save = function (options, cb) { var - data = this.toJSON(), + data = this.serialize(), self = this; if (options && cb === undefined && typeof options === 'function') { @@ -248,7 +248,7 @@ KuzzleDocument.prototype.save = function (options, cb) { * @returns {*} this */ KuzzleDocument.prototype.publish = function (options) { - var data = this.toJSON(); + var data = this.serialize(); this.kuzzle.query(this.dataCollection.buildQueryArgs('write', 'publish'), data, options); diff --git a/test/kuzzleDocument/methods.test.js b/test/kuzzleDocument/methods.test.js index 3f6e6712d..b4dc5d08d 100644 --- a/test/kuzzleDocument/methods.test.js +++ b/test/kuzzleDocument/methods.test.js @@ -57,20 +57,20 @@ describe('KuzzleDocument methods', function () { it('should serialize itself properly', function () { var document = new KuzzleDocument(dataCollection, {some: 'content'}), - serialized = document.toJSON(); + serialized = document.serialize(); should(serialized._id).be.undefined(); should(serialized._version).be.undefined(); should(serialized.body).be.an.Object().and.match({some: 'content'}); document.id = 'foo'; - serialized = document.toJSON(); + serialized = document.serialize(); should(serialized._id).be.exactly('foo'); should(serialized._version).be.undefined(); should(serialized.body).be.an.Object().and.match({some: 'content'}); document.version = 42; - serialized = document.toJSON(); + serialized = document.serialize(); should(serialized._id).be.exactly('foo'); should(serialized._version).be.exactly(42); should(serialized.body).be.an.Object().and.match({some: 'content'}); @@ -86,7 +86,7 @@ describe('KuzzleDocument methods', function () { it('should stringify itself properly', function () { var document = new KuzzleDocument(dataCollection, 'id', {some: 'content', _version: 42}), - serialized = document.toJSON(), + serialized = document.serialize(), stringified = document.toString(); should(stringified).be.a.String();