meadow-endpoints 4.0.12 → 4.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/meadow-endpoints.compatible.js +8 -5
- package/dist/meadow-endpoints.compatible.js.map +1 -1
- package/dist/meadow-endpoints.compatible.min.js +6 -6
- package/dist/meadow-endpoints.compatible.min.js.map +1 -1
- package/dist/meadow-endpoints.js +8 -5
- package/dist/meadow-endpoints.js.map +1 -1
- package/dist/meadow-endpoints.min.js +3 -3
- package/dist/meadow-endpoints.min.js.map +1 -1
- package/package.json +2 -2
|
@@ -3185,13 +3185,16 @@ tmpResult.error=pPreparedExecutionError;tmpResult.value=false;try{tmpResult.valu
|
|
|
3185
3185
|
*/var libSimpleGet=require('simple-get');var MeadowProvider=function MeadowProvider(){function createNew(pFable){// If a valid Fable object isn't passed in, return a constructor
|
|
3186
3186
|
if(_typeof(pFable)!=='object'){return{"new":createNew};}var _Fable=pFable;var _GlobalLogLevel=0;var _Dialect='MeadowEndpoints';var _Headers={};var _Cookies=[];var _EndpointSettings=_Fable.settings.hasOwnProperty('MeadowEndpoints')?JSON.parse(JSON.stringify(_Fable.settings.MeadowEndpoints)):{ServerProtocol:'http',ServerAddress:'127.0.0.1',ServerPort:'8086',ServerEndpointPrefix:'1.0/'};var buildURL=function buildURL(pAddress){return"".concat(_EndpointSettings.ServerProtocol,"://").concat(_EndpointSettings.ServerAddress,":").concat(_EndpointSettings.ServerPort,"/").concat(_EndpointSettings.ServerEndpointPrefix).concat(pAddress);};var buildRequestOptions=function buildRequestOptions(pQuery){if(pQuery.logLevel>0||_GlobalLogLevel>0){_Fable.log.trace(pQuery.query.body,pQuery.query.records);}var tmpURL=buildURL(pQuery.query.body);var tmpRequestOptions={url:tmpURL,headers:_Fable.Utility.extend({cookie:''},_Headers)};tmpRequestOptions.headers.cookie=_Cookies.join(';');if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("Request options built...",tmpRequestOptions);return tmpRequestOptions;};// The Meadow marshaller also passes in the Schema as the third parameter, but this is a blunt function ATM.
|
|
3187
3187
|
var marshalRecordFromSourceToObject=function marshalRecordFromSourceToObject(pObject,pRecord){for(var tmpColumn in pRecord){pObject[tmpColumn]=pRecord[tmpColumn];}};var Create=function Create(pQuery,fCallback){var tmpResult=pQuery.parameters.result;pQuery.setDialect(_Dialect).buildCreateQuery();var tmpRequestOptions=buildRequestOptions(pQuery);// TODO: Should this test for exactly one?
|
|
3188
|
-
if(!pQuery.query.records.length>0){tmpResult.error='No records passed for proxying to Meadow-Endpoints.';return fCallback();}tmpRequestOptions.body=pQuery.query.records[0];tmpRequestOptions.json=true;libSimpleGet.post(tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> POST request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> POST data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData)tmpResult.value=JSON.parse(tmpData)
|
|
3189
|
-
var tmpIdentityColumn="ID".concat(pQuery.parameters.scope);if(tmpResult.value.hasOwnProperty(tmpIdentityColumn))tmpResult.value=tmpResult.value[tmpIdentityColumn];if(pQuery.logLevel>0||_GlobalLogLevel>0){_Fable.log.debug("==> POST completed data size ".concat(tmpData.length,"b received"),tmpResult);}return fCallback();});});};// This is a synchronous read, good for a few records.
|
|
3188
|
+
if(!pQuery.query.records.length>0){tmpResult.error='No records passed for proxying to Meadow-Endpoints.';return fCallback();}tmpRequestOptions.body=pQuery.query.records[0];tmpRequestOptions.json=true;libSimpleGet.post(tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> POST request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> POST data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData){try{tmpResult.value=JSON.parse(tmpData);}catch(pParseError){tmpResult.error=new Error("Failed to parse Create response as JSON: ".concat(pParseError.message));return fCallback();}}// TODO Because this was proxied, read happens at this layer too. Inefficient -- fixable
|
|
3189
|
+
var tmpIdentityColumn="ID".concat(pQuery.parameters.scope);if(tmpResult.value&&tmpResult.value.hasOwnProperty(tmpIdentityColumn)){tmpResult.value=tmpResult.value[tmpIdentityColumn];}if(pQuery.logLevel>0||_GlobalLogLevel>0){_Fable.log.debug("==> POST completed data size ".concat(tmpData.length,"b received"),tmpResult);}return fCallback();});});};// This is a synchronous read, good for a few records.
|
|
3190
3190
|
// TODO: Add a pipe-able read for huge sets
|
|
3191
|
-
var Read=function Read(pQuery,fCallback){var tmpResult=pQuery.parameters.result;pQuery.setDialect(_Dialect).buildReadQuery();var tmpRequestOptions=buildRequestOptions(pQuery);libSimpleGet.get(tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> GET request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> GET data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData)tmpResult.value=JSON.parse(tmpData);if(pQuery.query.body.startsWith("".concat(pQuery.parameters.scope,"/"))){// If this is not a plural read, make the result into an array.
|
|
3191
|
+
var Read=function Read(pQuery,fCallback){var tmpResult=pQuery.parameters.result;pQuery.setDialect(_Dialect).buildReadQuery();var tmpRequestOptions=buildRequestOptions(pQuery);libSimpleGet.get(tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> GET request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> GET data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData){try{tmpResult.value=JSON.parse(tmpData);}catch(pParseError){tmpResult.error=new Error("Failed to parse Read response as JSON: ".concat(pParseError.message));return fCallback();}}if(pQuery.query.body.startsWith("".concat(pQuery.parameters.scope,"/"))){// If this is not a plural read, make the result into an array.
|
|
3192
3192
|
tmpResult.value=[tmpResult.value];}if(pQuery.logLevel>0||_GlobalLogLevel>0){_Fable.log.debug("==> GET completed data size ".concat(tmpData.length,"b received"),tmpResult);}fCallback();});});};var Update=function Update(pQuery,fCallback){var tmpResult=pQuery.parameters.result;pQuery.setDialect(_Dialect).buildUpdateQuery();var tmpRequestOptions=buildRequestOptions(pQuery);// TODO: Should this test for exactly one?
|
|
3193
|
-
if(!pQuery.query.records.length>0){tmpResult.error='No records passed for proxying to Meadow-Endpoints.';return fCallback();}tmpRequestOptions.body=pQuery.query.records[0];tmpRequestOptions.json=true;libSimpleGet.put(tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> PUT request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> PUT data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData)tmpResult.value=JSON.parse(tmpData)
|
|
3194
|
-
|
|
3193
|
+
if(!pQuery.query.records.length>0){tmpResult.error='No records passed for proxying to Meadow-Endpoints.';return fCallback();}tmpRequestOptions.body=pQuery.query.records[0];tmpRequestOptions.json=true;libSimpleGet.put(tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> PUT request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> PUT data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData){try{tmpResult.value=JSON.parse(tmpData);}catch(pParseError){tmpResult.error=new Error("Failed to parse Update response as JSON: ".concat(pParseError.message));return fCallback();}}// Keep result.value as the full response object so the
|
|
3194
|
+
// Meadow Update waterfall's typeof check passes (it expects
|
|
3195
|
+
// an object). The subsequent Read step uses the existing
|
|
3196
|
+
// filters to re-read the updated record.
|
|
3197
|
+
if(pQuery.logLevel>0||_GlobalLogLevel>0){_Fable.log.debug("==> PUT completed data size ".concat(tmpData.length,"b received"),tmpResult);}return fCallback();});});};var Delete=function Delete(pQuery,fCallback){var tmpResult=pQuery.parameters.result;pQuery.setDialect(_Dialect).buildDeleteQuery();var tmpRequestOptions=buildRequestOptions(pQuery);libSimpleGet["delete"](tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> DEL request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> DEL data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData){try{tmpResult.value=JSON.parse(tmpData);}catch(pParseError){tmpResult.error=new Error("Failed to parse Delete response as JSON: ".concat(pParseError.message));return fCallback();}}if(tmpResult.value&&tmpResult.value.hasOwnProperty('Count')){tmpResult.value=tmpResult.value.Count;}if(pQuery.logLevel>0||_GlobalLogLevel>0){_Fable.log.debug("==> DEL completed data size ".concat(tmpData.length,"b received"),tmpResult);}fCallback();});});};var Count=function Count(pQuery,fCallback){var tmpResult=pQuery.parameters.result;pQuery.setDialect(_Dialect).buildCountQuery();var tmpRequestOptions=buildRequestOptions(pQuery);libSimpleGet.get(tmpRequestOptions,function(pError,pResponse){tmpResult.error=pError;tmpResult.executed=true;if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> GET request connected");if(pError){return fCallback(tmpResult);}var tmpData='';pResponse.on('data',function(pChunk){if(pQuery.logLevel>0||_GlobalLogLevel>0)_Fable.log.debug("--> GET data chunk size ".concat(pChunk.length,"b received"));tmpData+=pChunk;});pResponse.on('end',function(){if(tmpData){try{tmpResult.value=JSON.parse(tmpData);}catch(pParseError){tmpResult.error=new Error("Failed to parse Count response as JSON: ".concat(pParseError.message));return fCallback();}}try{tmpResult.value=tmpResult.value.Count;}catch(pErrorGettingRowcount){// This is an error state...
|
|
3195
3198
|
tmpResult.value=-1;_Fable.log.warn('Error getting rowcount during count query',{Body:pQuery.query.body,Parameters:pQuery.query.parameters});}if(pQuery.logLevel>0||_GlobalLogLevel>0){_Fable.log.debug("==> GET completed data size ".concat(tmpData.length,"b received"),tmpResult);}fCallback();});});};var tmpNewProvider={marshalRecordFromSourceToObject:marshalRecordFromSourceToObject,Create:Create,Read:Read,Update:Update,Delete:Delete,Count:Count,getProvider:{},providerCreatesSupported:false,"new":createNew};return tmpNewProvider;}return createNew();};module.exports=new MeadowProvider();},{"simple-get":143}],115:[function(require,module,exports){// ##### Part of the **[retold](https://stevenvelozo.github.io/retold/)** system
|
|
3196
3199
|
/**
|
|
3197
3200
|
* @license MIT
|