@everestate/serverless-router
Advanced tools
Comparing version 0.2.0 to 0.3.0
@@ -8,3 +8,1 @@ #### Short description of what this resolves: | ||
* c | ||
**Fixes**: - |
@@ -15,3 +15,3 @@ const BasePlugin = require('../../BasePlugin'); | ||
return (number) => { | ||
if (!Number.isInteger(number)) { return false; } | ||
if (!Number.isInteger(number) || number === 0) { return false; } | ||
return number % 2 === reminder; | ||
@@ -18,0 +18,0 @@ }; |
{ | ||
"name": "@everestate/serverless-router", | ||
"version": "0.2.0", | ||
"description": "Fast, minimalist, pluggable, universal router.", | ||
"version": "0.3.0", | ||
"description": "Dependency-free, minimalist, pluggable, universal router.", | ||
"keywords": [ | ||
@@ -31,8 +31,8 @@ "serverless", | ||
"devDependencies": { | ||
"eslint": "^4.19.1", | ||
"eslint-config-airbnb-base": "^13.0.0", | ||
"eslint-plugin-import": "^2.13.0", | ||
"eslint-plugin-jest": "^21.15.2", | ||
"jest": "^23.2.0" | ||
"eslint": "^5.10.0", | ||
"eslint-config-airbnb-base": "^13.1.0", | ||
"eslint-plugin-import": "^2.14.0", | ||
"eslint-plugin-jest": "^22.1.2", | ||
"jest": "^23.6.0" | ||
} | ||
} |
# @everestate/serverless-router | ||
> Fast, minimalist, pluggable, universal router. | ||
> Dependency-free, minimalist, pluggable, universal router. | ||
@@ -15,5 +15,5 @@ ## Installation | ||
* [serverless-router-plugin-web](https://github.com/everestate/serverless-router-plugin-web) | ||
* [serverless-router-plugin-dynamodb ](https://github.com/everestate/serverless-router-plugin-dynamodb) | ||
* [serverless-router-plugin-dynamics](https://github.com/everestate/serverless-router-plugin-dynamics) | ||
* [serverless-router-web](https://github.com/everestate/serverless-router-web) | ||
* [serverless-router-aws](https://github.com/everestate/serverless-router-aws) | ||
* [serverless-router-dynamics](https://github.com/everestate/serverless-router-dynamics) | ||
* and others | ||
@@ -23,4 +23,4 @@ | ||
```javascript | ||
const ServerlessRouter = require('@everestate/serverless-router'); | ||
const ServerlessRouterWebPlugin = require('@everestate/serverless-router-plugin-web'); | ||
const Router = require('@everestate/serverless-router'); | ||
const Web = require('@everestate/serverless-router-web'); | ||
@@ -30,9 +30,13 @@ cosnt userService = require('../services/userService'); | ||
function dispatch(event) { | ||
const router = new ServerlessRouter([ServerlessRouterWebPlugin]); | ||
const router = new Router([Web]); | ||
router.web | ||
.post('/users', () => | ||
userService.createUser(event.body)) // returns promise | ||
.get('/users/:id', () => | ||
userService.getUserById(event.pathParameters.id)) // returns promise | ||
.patch('/users/:id', () => | ||
userService.updateUser(event.pathParameters.id, event.body)) // returns promise | ||
.delete('/users/:id', () => | ||
userService.deleteUserById(event.pathParameters.id)); // returns promise | ||
userService.deleteUser(event.pathParameters.id)); // returns promise | ||
@@ -60,3 +64,3 @@ router.mismatch(() => { | ||
It's possible to define custom mismatch handler, and it would be called with same arguments `dispatch` was called: | ||
It's possible to define custom mismatch handler, and it would be called with same arguments as `dispatch` was called: | ||
@@ -75,11 +79,6 @@ ```javascript | ||
There are few implementations for testing purposes you might be interesting in: | ||
* [`lib/__tests__/__fixtures__/EvenOddPlugin.js`](https://github.com/everestate/serverless-router/blob/master/lib/__tests__/__fixtures__/EvenOddPlugin.js) | ||
* [`lib/__tests__/__fixtures__/TypePlugin.js`](https://github.com/everestate/serverless-router/blob/master/lib/__tests__/__fixtures__/TypePlugin.js) | ||
* [`lib/__tests__/__fixtures__/WeekdayPlugin.js`](https://github.com/everestate/serverless-router/blob/master/lib/__tests__/__fixtures__/WeekdayPlugin.js) | ||
Check the [docs/plugins.md](./docs/plugins.md) to find out how to implement the new plugin. | ||
@TODO: describe plugin implementation principles | ||
## License | ||
[MIT](./LICENSE) |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
180931
19
80