Socket
Socket
Sign inDemoInstall

cdb-driver

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cdb-driver - npm Package Compare versions

Comparing version 0.1.3 to 0.1.4

38

app/main.js

@@ -61,3 +61,3 @@ // const ChildProcess = require('child_process');

_setAuthHeader(request) {
return request.setRequestHeader('Authorization',this._getAuthHeader());
request.setRequestHeader('Authorization',this._getAuthHeader());
}

@@ -151,7 +151,7 @@

req.open('GET',this.host);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();
} else {
req.open('GET',this.host,false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();

@@ -201,7 +201,7 @@

req.open('GET',this.host + '_all_dbs');
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();
} else {
req.open('GET',this.host + '_all_dbs', false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();

@@ -240,7 +240,7 @@

req.open('GET',this.host + dbIdentifier);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();
} else {
req.open('GET',this.host + dbIdentifier,false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();

@@ -272,7 +272,7 @@

req.open('PUT',this.host);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();
} else {
req.open('PUT',this.host + dbIdentifier,false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();

@@ -304,7 +304,7 @@

req.open('GET',this.host + dbIdentifier + '/_all_docs');
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();
} else {
req.open('GET',this.host + dbIdentifier + '/_all_docs',false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();

@@ -338,3 +338,3 @@

req.open('POST',this.host + dbIdentifier);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.setRequestHeader('Content-Type','application/json');

@@ -344,3 +344,3 @@ req.send(JSON.stringify(data));

req.open('POST',this.host + dbIdentifier,false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.setRequestHeader('Content-Type','application/json');

@@ -375,7 +375,7 @@ req.send(JSON.stringify(data));

req.open('GET',this.host + dbIdentifier + '/' + docIdentifier);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();
} else {
req.open('GET',this.host + dbIdentifier + '/' + docIdentifier,false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();

@@ -411,7 +411,7 @@

req.open('DELETE',this.host + dbIdentifier + '/' + docIdentifier + '?rev=' + docRevision);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();
} else {
req.open('DELETE',this.host + dbIdentifier + '/' + docIdentifier + '?rev=' + docRevision,false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.send();

@@ -449,3 +449,3 @@

req.open('PUT',this.host + dbIdentifier + '/' + docIdentifier + '?rev=' + docRevision);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.setRequestHeader('Content-Type','application/json');

@@ -455,3 +455,3 @@ req.send(JSON.stringify(data));

req.open('PUT',this.host + dbIdentifier + '/' + docIdentifier + '?rev=' + docRevision,false);
if(this._auth) req = this._setAuthHeader(req);
if(this._auth) this._setAuthHeader(req);
req.setRequestHeader('Content-Type','application/json');

@@ -458,0 +458,0 @@ req.send(JSON.stringify(data));

@@ -1,1 +0,1 @@

"use strict";var _createClass=function(){function e(e,t){for(var s=0;s<t.length;s++){var i=t[s];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,s,i){return s&&e(t.prototype,s),i&&e(t,i),t}}();function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var btoa=require("btoa"),_isset=require("isset-helper"),CDBDriver=function(){function e(t){if(_classCallCheck(this,e),_isset(t,"object")){if(!_isset(t.host,"string"))throw new TypeError("CDBDriver configuration is missing required key: host!");this.host=t.host,_isset(t.user,"string")&&_isset(t.pass,"string")?(this._auth=!0,this.user=t.user,this.pass=t.pass):this._auth=!1}else{if(!_isset(t,"string"))throw new TypeError("Invalid configuration passed to CDBDriver constructor!");try{if(t.includes("@")){this._auth=!0;var s=t.split("@"),i=s[0].split("//")[0]+"//",r=s[0].split("//")[1];this.user=r.split(":")[0],this.pass=r.split(":")[1],this.host=i+s[1].split(":")[0]+":"+parseInt(s[1].split(":")[1])}else this._auth=!1,this.host=t}catch(e){throw new TypeError("An error occurred while parsing CouchDB URL string.")}}this.host.endsWith("/")||(this.host=this.host+"/");try{new XMLHttpRequest,this._mode="xhr"}catch(e){throw this._mode="curl",new Error("CDBDriver currently not supports CURL mode!")}}return _createClass(e,[{key:"_getAuthHeader",value:function(){return"Basic "+btoa(this.user+":"+this.pass)}},{key:"_setAuthHeader",value:function(e){return e.setRequestHeader("Authorization",this._getAuthHeader())}},{key:"_buildCURL",value:function(e){var t="curl ";return _isset(e.method,"string")?t+="-X "+e.method+" ":t+="-X GET ",e.verbose&&(t+="-v "),_isset(e.data,"object")?(t+='-H "Content-Type: application/json" ',t+='-d "'+JSON.stringify(e.data)+'" '):_isset(e.data,"string")&&(t+='-d "'+e.data+'"'),this._auth&&(t+='-H "Authorization: '+this._getAuthHeader()+'" '),_isset(e.location,"string")?t+=this.host+e.location:t+=this.host,t}},{key:"_parseCURLResponse",value:function(e,t){var s,i;if(t){s={},i="",e.split("\n").forEach(function(e,t,r){if(e.startsWith("*"));else if(e.startsWith(">"));else if(e.startsWith("<")){e.replace("< ","");e.includes("HTTP/")&&(s.code=parseInt(e.replace(new RegExp("HTTP/[^s]+ "),"")))}else i+=e});try{s.body=JSON.parse(i)}catch(e){s.body=i}finally{return s}}else try{s=JSON.parse(e)}catch(t){return e}finally{return s}}},{key:"info",value:function(e){if("xhr"==this._mode){var t=new XMLHttpRequest;if(!_isset(e,"function"))return t.open("GET",this.host,!1),this._auth&&(t=this._setAuthHeader(t)),t.send(),{state:t.status,response:t.response};t.addEventListener("load",function(s){e({state:t.status,response:t.response})}),t.open("GET",this.host),this._auth&&(t=this._setAuthHeader(t)),t.send()}}},{key:"allDbs",value:function(e){if("xhr"==this._mode){var t=new XMLHttpRequest;if(!_isset(e,"function"))return t.open("GET",this.host+"_all_dbs",!1),this._auth&&(t=this._setAuthHeader(t)),t.send(),{state:t.status,response:t.response};t.addEventListener("load",function(s){e({state:t.status,response:t.response})}),t.open("GET",this.host+"_all_dbs"),this._auth&&(t=this._setAuthHeader(t)),t.send()}else _isset(e,"function")}},{key:"getDb",value:function(e,t){if(!_isset(e,"string"))throw new Error("CDBDriver.db() is missing required argument: dbIdentifier!");if("xhr"==this._mode){var s=new XMLHttpRequest;if(!_isset(t,"function"))return s.open("GET",this.host+e,!1),this._auth&&(s=this._setAuthHeader(s)),s.send(),{state:s.status,response:s.response};s.addEventListener("load",function(e){t({state:s.status,response:s.response})}),s.open("GET",this.host+e),this._auth&&(s=this._setAuthHeader(s)),s.send()}}},{key:"createDb",value:function(e,t){if(!_isset(e,"string"))throw new Error("CDBDriver.createDb() is missing required argument: dbIdentifier!");if("xhr"==this._mode){var s=new XMLHttpRequest;if(!_isset(t,"function"))return s.open("PUT",this.host+e,!1),this._auth&&(s=this._setAuthHeader(s)),s.send(),{state:s.status,response:s.response};s.addEventListener("load",function(e){t({state:s.status,response:s.response})}),s.open("PUT",this.host),this._auth&&(s=this._setAuthHeader(s)),s.send()}}},{key:"getDocs",value:function(e,t){if(!_isset(e,"string"))throw new Error("CDBDriver.getDocs() is missing required argument: dbIdentifier!");if("xhr"==this._mode){var s=new XMLHttpRequest;if(!_isset(t,"function"))return s.open("GET",this.host+e+"/_all_docs",!1),this._auth&&(s=this._setAuthHeader(s)),s.send(),{state:s.status,response:s.response};s.addEventListener("load",function(e){t({state:s.status,response:s.response})}),s.open("GET",this.host+e+"/_all_docs"),this._auth&&(s=this._setAuthHeader(s)),s.send()}}},{key:"storeDoc",value:function(e,t,s){if(!_isset(e,"string"))throw new Error("CDBDriver.storeDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"object"))throw new Error("CDBDriver.storeDoc() is missing required argument: data!");if("xhr"==this._mode){var i=new XMLHttpRequest;if(!_isset(s,"function"))return i.open("POST",this.host+e,!1),this._auth&&(i=this._setAuthHeader(i)),i.setRequestHeader("Content-Type","application/json"),i.send(JSON.stringify(t)),{state:i.status,response:i.response};i.addEventListener("load",function(e){s({state:i.status,response:i.response})}),i.open("POST",this.host+e),this._auth&&(i=this._setAuthHeader(i)),i.setRequestHeader("Content-Type","application/json"),i.send(JSON.stringify(t))}}},{key:"getDoc",value:function(e,t,s){if(!_isset(e,"string"))throw new Error("CDBDriver.getDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"string"))throw new Error("CDBDriver.getDoc() is missing required argument: docIdentifier!");if("xhr"==this._mode){var i=new XMLHttpRequest;if(!_isset(s,"function"))return i.open("GET",this.host+e+"/"+t,!1),this._auth&&(i=this._setAuthHeader(i)),i.send(),{state:i.status,response:i.response};i.addEventListener("load",function(e){s({state:i.status,response:i.response})}),i.open("GET",this.host+e+"/"+t),this._auth&&(i=this._setAuthHeader(i)),i.send()}}},{key:"deleteDoc",value:function(e,t,s,i){if(!_isset(e,"string"))throw new Error("CDBDriver.deleteDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"string"))throw new Error("CDBDriver.deleteDoc() is missing required argument: docIdentifier!");if(!_isset(s,"string"))throw new Error("CDBDriver.deleteDoc() is missing required argument: docRevision!");if("xhr"==this._mode){var r=new XMLHttpRequest;if(!_isset(i,"function"))return r.open("DELETE",this.host+e+"/"+t+"?rev="+s,!1),this._auth&&(r=this._setAuthHeader(r)),r.send(),{state:r.status,response:r.response};r.addEventListener("load",function(e){i({state:r.status,response:r.response})}),r.open("DELETE",this.host+e+"/"+t+"?rev="+s),this._auth&&(r=this._setAuthHeader(r)),r.send()}}},{key:"updateDoc",value:function(e,t,s,i,r){if(!_isset(e,"string"))throw new Error("CDBDriver.updateDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"string"))throw new Error("CDBDriver.updateDoc() is missing required argument: docIdentifier!");if(!_isset(s,"string"))throw new Error("CDBDriver.updateDoc() is missing required argument: docRevision!");if(!_isset(i,"object"))throw new Error("CDBDriver.updateDoc() is missing required argument: data!");if("xhr"==this._mode){var n=new XMLHttpRequest;if(!_isset(r,"function"))return n.open("PUT",this.host+e+"/"+t+"?rev="+s,!1),this._auth&&(n=this._setAuthHeader(n)),n.setRequestHeader("Content-Type","application/json"),n.send(JSON.stringify(i)),{state:n.status,resposne:n.response};n.addEventListener("load",function(e){r({state:n.status,response:n.response})}),n.open("PUT",this.host+e+"/"+t+"?rev="+s),this._auth&&(n=this._setAuthHeader(n)),n.setRequestHeader("Content-Type","application/json"),n.send(JSON.stringify(i))}}}]),e}();try{module.exports=CDBDriver}catch(e){}
"use strict";var _createClass=function(){function e(e,t){for(var s=0;s<t.length;s++){var i=t[s];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,s,i){return s&&e(t.prototype,s),i&&e(t,i),t}}();function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var btoa=require("btoa"),_isset=require("isset-helper"),CDBDriver=function(){function e(t){if(_classCallCheck(this,e),_isset(t,"object")){if(!_isset(t.host,"string"))throw new TypeError("CDBDriver configuration is missing required key: host!");this.host=t.host,_isset(t.user,"string")&&_isset(t.pass,"string")?(this._auth=!0,this.user=t.user,this.pass=t.pass):this._auth=!1}else{if(!_isset(t,"string"))throw new TypeError("Invalid configuration passed to CDBDriver constructor!");try{if(t.includes("@")){this._auth=!0;var s=t.split("@"),i=s[0].split("//")[0]+"//",r=s[0].split("//")[1];this.user=r.split(":")[0],this.pass=r.split(":")[1],this.host=i+s[1].split(":")[0]+":"+parseInt(s[1].split(":")[1])}else this._auth=!1,this.host=t}catch(e){throw new TypeError("An error occurred while parsing CouchDB URL string.")}}this.host.endsWith("/")||(this.host=this.host+"/");try{new XMLHttpRequest,this._mode="xhr"}catch(e){throw this._mode="curl",new Error("CDBDriver currently not supports CURL mode!")}}return _createClass(e,[{key:"_getAuthHeader",value:function(){return"Basic "+btoa(this.user+":"+this.pass)}},{key:"_setAuthHeader",value:function(e){e.setRequestHeader("Authorization",this._getAuthHeader())}},{key:"_buildCURL",value:function(e){var t="curl ";return _isset(e.method,"string")?t+="-X "+e.method+" ":t+="-X GET ",e.verbose&&(t+="-v "),_isset(e.data,"object")?(t+='-H "Content-Type: application/json" ',t+='-d "'+JSON.stringify(e.data)+'" '):_isset(e.data,"string")&&(t+='-d "'+e.data+'"'),this._auth&&(t+='-H "Authorization: '+this._getAuthHeader()+'" '),_isset(e.location,"string")?t+=this.host+e.location:t+=this.host,t}},{key:"_parseCURLResponse",value:function(e,t){var s,i;if(t){s={},i="",e.split("\n").forEach(function(e,t,r){if(e.startsWith("*"));else if(e.startsWith(">"));else if(e.startsWith("<")){e.replace("< ","");e.includes("HTTP/")&&(s.code=parseInt(e.replace(new RegExp("HTTP/[^s]+ "),"")))}else i+=e});try{s.body=JSON.parse(i)}catch(e){s.body=i}finally{return s}}else try{s=JSON.parse(e)}catch(t){return e}finally{return s}}},{key:"info",value:function(e){if("xhr"==this._mode){var t=new XMLHttpRequest;if(!_isset(e,"function"))return t.open("GET",this.host,!1),this._auth&&this._setAuthHeader(t),t.send(),{state:t.status,response:t.response};t.addEventListener("load",function(s){e({state:t.status,response:t.response})}),t.open("GET",this.host),this._auth&&this._setAuthHeader(t),t.send()}}},{key:"allDbs",value:function(e){if("xhr"==this._mode){var t=new XMLHttpRequest;if(!_isset(e,"function"))return t.open("GET",this.host+"_all_dbs",!1),this._auth&&this._setAuthHeader(t),t.send(),{state:t.status,response:t.response};t.addEventListener("load",function(s){e({state:t.status,response:t.response})}),t.open("GET",this.host+"_all_dbs"),this._auth&&this._setAuthHeader(t),t.send()}else _isset(e,"function")}},{key:"getDb",value:function(e,t){if(!_isset(e,"string"))throw new Error("CDBDriver.db() is missing required argument: dbIdentifier!");if("xhr"==this._mode){var s=new XMLHttpRequest;if(!_isset(t,"function"))return s.open("GET",this.host+e,!1),this._auth&&this._setAuthHeader(s),s.send(),{state:s.status,response:s.response};s.addEventListener("load",function(e){t({state:s.status,response:s.response})}),s.open("GET",this.host+e),this._auth&&this._setAuthHeader(s),s.send()}}},{key:"createDb",value:function(e,t){if(!_isset(e,"string"))throw new Error("CDBDriver.createDb() is missing required argument: dbIdentifier!");if("xhr"==this._mode){var s=new XMLHttpRequest;if(!_isset(t,"function"))return s.open("PUT",this.host+e,!1),this._auth&&this._setAuthHeader(s),s.send(),{state:s.status,response:s.response};s.addEventListener("load",function(e){t({state:s.status,response:s.response})}),s.open("PUT",this.host),this._auth&&this._setAuthHeader(s),s.send()}}},{key:"getDocs",value:function(e,t){if(!_isset(e,"string"))throw new Error("CDBDriver.getDocs() is missing required argument: dbIdentifier!");if("xhr"==this._mode){var s=new XMLHttpRequest;if(!_isset(t,"function"))return s.open("GET",this.host+e+"/_all_docs",!1),this._auth&&this._setAuthHeader(s),s.send(),{state:s.status,response:s.response};s.addEventListener("load",function(e){t({state:s.status,response:s.response})}),s.open("GET",this.host+e+"/_all_docs"),this._auth&&this._setAuthHeader(s),s.send()}}},{key:"storeDoc",value:function(e,t,s){if(!_isset(e,"string"))throw new Error("CDBDriver.storeDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"object"))throw new Error("CDBDriver.storeDoc() is missing required argument: data!");if("xhr"==this._mode){var i=new XMLHttpRequest;if(!_isset(s,"function"))return i.open("POST",this.host+e,!1),this._auth&&this._setAuthHeader(i),i.setRequestHeader("Content-Type","application/json"),i.send(JSON.stringify(t)),{state:i.status,response:i.response};i.addEventListener("load",function(e){s({state:i.status,response:i.response})}),i.open("POST",this.host+e),this._auth&&this._setAuthHeader(i),i.setRequestHeader("Content-Type","application/json"),i.send(JSON.stringify(t))}}},{key:"getDoc",value:function(e,t,s){if(!_isset(e,"string"))throw new Error("CDBDriver.getDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"string"))throw new Error("CDBDriver.getDoc() is missing required argument: docIdentifier!");if("xhr"==this._mode){var i=new XMLHttpRequest;if(!_isset(s,"function"))return i.open("GET",this.host+e+"/"+t,!1),this._auth&&this._setAuthHeader(i),i.send(),{state:i.status,response:i.response};i.addEventListener("load",function(e){s({state:i.status,response:i.response})}),i.open("GET",this.host+e+"/"+t),this._auth&&this._setAuthHeader(i),i.send()}}},{key:"deleteDoc",value:function(e,t,s,i){if(!_isset(e,"string"))throw new Error("CDBDriver.deleteDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"string"))throw new Error("CDBDriver.deleteDoc() is missing required argument: docIdentifier!");if(!_isset(s,"string"))throw new Error("CDBDriver.deleteDoc() is missing required argument: docRevision!");if("xhr"==this._mode){var r=new XMLHttpRequest;if(!_isset(i,"function"))return r.open("DELETE",this.host+e+"/"+t+"?rev="+s,!1),this._auth&&this._setAuthHeader(r),r.send(),{state:r.status,response:r.response};r.addEventListener("load",function(e){i({state:r.status,response:r.response})}),r.open("DELETE",this.host+e+"/"+t+"?rev="+s),this._auth&&this._setAuthHeader(r),r.send()}}},{key:"updateDoc",value:function(e,t,s,i,r){if(!_isset(e,"string"))throw new Error("CDBDriver.updateDoc() is missing required argument: dbIdentifier!");if(!_isset(t,"string"))throw new Error("CDBDriver.updateDoc() is missing required argument: docIdentifier!");if(!_isset(s,"string"))throw new Error("CDBDriver.updateDoc() is missing required argument: docRevision!");if(!_isset(i,"object"))throw new Error("CDBDriver.updateDoc() is missing required argument: data!");if("xhr"==this._mode){var n=new XMLHttpRequest;if(!_isset(r,"function"))return n.open("PUT",this.host+e+"/"+t+"?rev="+s,!1),this._auth&&this._setAuthHeader(n),n.setRequestHeader("Content-Type","application/json"),n.send(JSON.stringify(i)),{state:n.status,resposne:n.response};n.addEventListener("load",function(e){r({state:n.status,response:n.response})}),n.open("PUT",this.host+e+"/"+t+"?rev="+s),this._auth&&this._setAuthHeader(n),n.setRequestHeader("Content-Type","application/json"),n.send(JSON.stringify(i))}}}]),e}();try{module.exports=CDBDriver}catch(e){}
{
"name": "cdb-driver",
"version": "0.1.3",
"version": "0.1.4",
"description": "A driver library for connecting to a CouchDB instance through JavaScript.",

@@ -5,0 +5,0 @@ "main": "app/main.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc