Socket
Socket
Sign inDemoInstall

viewmodel

Package Overview
Dependencies
Maintainers
2
Versions
109
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

viewmodel - npm Package Compare versions

Comparing version 1.2.3 to 1.2.4

137

lib/databases/azuretable.js
'use strict';
var util = require('util'),
Repository = require('../base'),
ViewModel = Repository.ViewModel,
ConcurrencyError = require('../concurrencyError'),
azure = require('azure-storage'),
async = require('async'),
uuid = require('node-uuid').v4,
_ = require('lodash'),
jsondate = require('jsondate'),
eg = azure.TableUtilities.entityGenerator,
collections = [];
Repository = require('../base'),
ViewModel = Repository.ViewModel,
ConcurrencyError = require('../concurrencyError'),
azure = require('azure-storage'),
async = require('async'),
uuid = require('node-uuid').v4,
_ = require('lodash'),
jsondate = require('jsondate'),
eg = azure.TableUtilities.entityGenerator,
collections = [];
//helpers
function generateEntity (obj) {
function generateEntity(obj) {
var entity = _.clone(obj);

@@ -22,19 +22,22 @@ for (var property in entity) {

entity[property] = JSON.stringify(entity[property]);
continue;
}
if (_.isBoolean(entity[property])) {
entity[property] = eg.Boolean(entity[property]);
continue;
}
if (_.isDate(entity[property])) {
entity[property] = eg.DateTime(entity[property]);
continue;
}
if (_.isString(entity[property])) {
entity[property] = eg.String(entity[property]);
continue;
}
if (_.isObject(entity[property])) {
entity[property] = JSON.stringify(entity[property]);
continue;
}
switch (typeof entity[property]) {
case 'string':
entity[property] = eg.String(entity[property]);
break;
case 'boolean':
entity[property] = eg.Boolean(entity[property]);
break;
case 'number':
entity[property] = eg.Int32(entity[property]);
break;
default:
entity[property] = eg.Entity(entity[property]);
}
entity[property] = eg.Entity(entity[property]);
}

@@ -64,5 +67,5 @@ }

if (!_.isArray(obj[property]['_'])
&& !_.isObject(obj[property]['_'])
&& obj[property]['$']
&& obj[property]['$'] == 'Edm.String') {
&& !_.isObject(obj[property]['_'])
&& obj[property]['$']
&& obj[property]['$'] == 'Edm.String') {
obj[property]['_'] = obj[property]['_'].toString();

@@ -77,18 +80,4 @@ }

function propertyResolver (pk, rk, name, value) {
if (name.indexOf('BinaryField') !== -1) {
return 'Edm.Binary';
} else if (name.indexOf('GuidField') !== -1) {
return 'Edm.Guid';
} else if (name.indexOf('DateField') !== -1) {
return 'Edm.DateTime';
} else if (name.indexOf('DoubleField') !== -1) {
return 'Edm.Double';
}
return 'Edm.String';
}
// Class
function AzureTable (options) {
function AzureTable(options) {
Repository.call(this, options);

@@ -151,19 +140,19 @@

self.client.retrieveEntity(self.collectionName,
id,
id,
options,
function (err, entity) {
if (err && err.code != 'ResourceNotFound') {
return callback(err);
}
id,
id,
options,
function (err, entity) {
if (err && err.code != 'ResourceNotFound') {
return callback(err);
}
if (!entity) {
return callback(null, new ViewModel({id: id}, self));
}
if (!entity) {
return callback(null, new ViewModel({id: id}, self));
}
entity = generateObject(entity);
var vm = new ViewModel(entity, self);
vm.actionOnCommit = 'update';
callback(null, vm);
});
entity = generateObject(entity);
var vm = new ViewModel(entity, self);
vm.actionOnCommit = 'update';
callback(null, vm);
});
});

@@ -187,10 +176,10 @@ },

tableQuery = _(query)
.reduce(function (result, val, key) {
if (key.indexOf('.') == -1) {
if (result._where.length === 0) return tableQuery.where(key + ' eq ?', val);
return result.and(key + ' eq ?', val);
} else {
return result;
}
}, tableQuery);
.reduce(function (result, val, key) {
if (key.indexOf('.') == -1) {
if (result._where.length === 0) return tableQuery.where(key + ' eq ?', val);
return result.and(key + ' eq ?', val);
} else {
return result;
}
}, tableQuery);

@@ -276,6 +265,6 @@ if (queryOptions.limit !== -1) {

self.client.deleteEntity(self.collectionName, objDescriptor, function (err) {
if (err) {
if (callback) callback(err);
return;
}
//if (err) {
// if (callback) callback(err);
// return;
//}
if (callback) callback(null, vm);

@@ -352,9 +341,9 @@ });

async.each(entities.entries, function (entity, callback) {
self.client.deleteEntity(col, entity, function (error, response) {
self.client.deleteEntity(col, entity, function (error, response) {
callback(error);
});
},
function (error) {
callback(error);
});
},
function (error) {
callback(error);
});
});

@@ -361,0 +350,0 @@ }, callback);

{
"author": "adrai",
"name": "viewmodel",
"version": "1.2.3",
"version": "1.2.4",
"private": false,

@@ -6,0 +6,0 @@ "main": "index.js",

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

## [v1.2.4](https://github.com/adrai/node-viewmodel/compare/v1.2.3...v1.2.4)
- fix date issue for azure-table [#8](https://github.com/adrai/node-viewmodel/pull/8) thanks to [sbiaudet](https://github.com/sbiaudet)
## [v1.2.3](https://github.com/adrai/node-viewmodel/compare/v1.2.2...v1.2.3)

@@ -5,3 +8,3 @@ - automatically add commitStamp on commit

## v1.2.2
- azure-table: fix issue in getEvents [#7](https://github.com/adrai/node-viewmodel/pull/7) thanks to [rvin100](https://github.com/rvin100)
- azure-table: fix issue in find [#7](https://github.com/adrai/node-viewmodel/pull/7) thanks to [rvin100](https://github.com/rvin100)

@@ -8,0 +11,0 @@ ## v1.2.1

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