New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@cubejs-backend/api-gateway

Package Overview
Dependencies
Maintainers
1
Versions
589
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@cubejs-backend/api-gateway - npm Package Compare versions

Comparing version 0.6.1 to 0.6.2

dateParser.js

12

CHANGELOG.md

@@ -6,2 +6,14 @@ # Change Log

## [0.6.2](https://github.com/statsbotco/cubejs-client/compare/v0.6.1...v0.6.2) (2019-04-12)
### Features
* Natural language date range support ([b962e80](https://github.com/statsbotco/cubejs-client/commit/b962e80))
* **api-gateway:** Order support ([670237b](https://github.com/statsbotco/cubejs-client/commit/670237b))
## [0.6.1](https://github.com/statsbotco/cubejs-client/compare/v0.6.0...v0.6.1) (2019-04-11)

@@ -8,0 +20,0 @@

31

index.js

@@ -5,2 +5,3 @@ const jwt = require('jsonwebtoken');

const moment = require('moment');
const dateParser = require('./dateParser');

@@ -115,4 +116,8 @@ class UserError extends Error {}

granularity: Joi.valid('day', 'month', 'year', 'week', 'hour', null),
dateRange: Joi.array().items(Joi.string()).min(1).max(2)
dateRange: [
Joi.array().items(Joi.string()).min(1).max(2),
Joi.string()
]
})),
order: Joi.object().pattern(id, Joi.valid('asc', 'desc')),
segments: Joi.array().items(id),

@@ -165,11 +170,25 @@ timezone: Joi.string(),

}));
const timezone = query.timezone || 'UTC';
const order = query.order && Object.keys(query.order).map(k => ({
id: k,
desc: query.order[k] === 'desc'
}));
return {
...query,
rowLimit: query.rowLimit || query.limit,
timezone: query.timezone || 'UTC', // TODO get from bot
timezone,
order,
dimensions: (query.dimensions || []).filter(d => d.split('.').length !== 3),
timeDimensions: (query.timeDimensions || []).map(td => ({
...td,
dateRange: td.dateRange && td.dateRange.length === 1 ? [td.dateRange[0], td.dateRange[0]] : td.dateRange
})).concat(regularToTimeDimension)
timeDimensions: (query.timeDimensions || []).map(td => {
let dateRange;
if (typeof td.dateRange === 'string') {
dateRange = dateParser(td.dateRange);
} else {
dateRange = td.dateRange && td.dateRange.length === 1 ? [td.dateRange[0], td.dateRange[0]] : td.dateRange;
}
return {
...td,
dateRange
};
}).concat(regularToTimeDimension)
};

@@ -176,0 +195,0 @@ };

5

package.json

@@ -5,3 +5,3 @@ {

"author": "Statsbot, Inc.",
"version": "0.6.1",
"version": "0.6.2",
"engines": {

@@ -15,2 +15,3 @@ "node": ">=8.11.1"

"dependencies": {
"chrono-node": "^1.3.11",
"joi": "^14.0.6",

@@ -28,3 +29,3 @@ "jsonwebtoken": "^8.3.0",

"license": "Apache-2.0",
"gitHead": "94818eb1b00f5308da9bf189e8d612d2e0b7627b"
"gitHead": "e8dde2dafb7c2ecc9a76f2fa92ea0b1b9ba7381d"
}
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