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

adonis-jsonapi

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

adonis-jsonapi - npm Package Compare versions

Comparing version 0.5.4 to 0.6.0

2

package.json
{
"name": "adonis-jsonapi",
"version": "0.5.4",
"version": "0.6.0",
"description": "A JSON API configuration for adonis-framework",

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

'use strict';
const JsonApiSerializer = require('jsonapi-serializer').Serializer;
const { JsonApiRequest, JsonApiError } = require('./JsonApiRequest');
const { JsonApiRequest, JsonApiError, ValidationError } = require('./JsonApiRequest');

@@ -41,4 +41,7 @@ function setupSerializer(use) {

Response.macro('isJsonApiError', (err) => err instanceof JsonApiError);
Response.macro('isValidationError', (err) => err instanceof ValidationError);
Response.macro('jsonApiError', function (err) {
if (err instanceof JsonApiError) {
if (err instanceof ValidationError) {
this.status(err.status).json({ errors: err.makeErrors() });
} else if (err instanceof JsonApiError) {
this.status(err.status).json({ errors: [err.message] });

@@ -45,0 +48,0 @@ } else {

@@ -5,2 +5,18 @@ const NE = require('node-exceptions');

class ValidationError extends NE.LogicalException {
constructor(validator, status = 400) {
super('', status);
this.validator = validator;
}
makeErrors() {
return this.validator.messages().map((err) => ({
status: this.status,
source: { pointer: `/data/attributes/${err.field}` },
title: 'Invalid Attribute',
detail: err.message,
}));
}
}
const pick = require('lodash.pick');

@@ -72,2 +88,11 @@ const mapKeys = require('lodash.mapkeys');

* assertValid(input, rules, messages) {
const Validator = use('Validator');
const validation = yield Validator.validateAll(input, rules, messages);
if (validation.fails()) {
throw new ValidationError(validation);
}
}
getRelationId(relationName) {

@@ -91,2 +116,3 @@ try {

JsonApiError,
ValidationError,
};
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