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

@adonisjs/http-server

Package Overview
Dependencies
Maintainers
3
Versions
137
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@adonisjs/http-server - npm Package Compare versions

Comparing version 7.0.0-1 to 7.0.0-2

build/chunk-Z63E3STR.js

346

build/factories/main.js

@@ -1,14 +0,332 @@

/*
* @adonisjs/http-server
*
* (c) AdonisJS
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
export { HttpContextFactory } from './http_context.js';
export { QsParserFactory } from './qs_parser_factory.js';
export { RequestFactory } from './request.js';
export { ResponseFactory } from './response.js';
export { RouterFactory } from './router.js';
export { ServerFactory } from './server_factory.js';
import {
HttpContext,
Qs,
Request,
Response,
Router,
Server,
defineConfig
} from "../chunk-Z63E3STR.js";
// factories/http_context.ts
import { Container } from "@adonisjs/fold";
import { LoggerFactory } from "@adonisjs/logger/factories";
// factories/request.ts
import { Socket } from "node:net";
import proxyAddr from "proxy-addr";
import { IncomingMessage, ServerResponse } from "node:http";
import { EncryptionFactory } from "@adonisjs/encryption/factories";
// factories/qs_parser_factory.ts
var QsParserFactory = class {
#options = {
parse: {
depth: 5,
parameterLimit: 1e3,
allowSparse: false,
arrayLimit: 20,
comma: true
},
stringify: {
encode: true,
encodeValuesOnly: false,
arrayFormat: "indices",
skipNulls: false
}
};
/**
* Merge encryption factory options
*/
merge(options) {
Object.assign(this.#options.parse, options.parse);
Object.assign(this.#options.stringify, options.stringify);
return this;
}
/**
* Create instance of the logger class
*/
create() {
return new Qs(this.#options);
}
};
// factories/request.ts
var RequestFactory = class {
#parameters = {};
/**
* Returns the config for the request class
*/
#getConfig() {
return {
allowMethodSpoofing: false,
trustProxy: proxyAddr.compile("loopback"),
subdomainOffset: 2,
generateRequestId: false,
...this.#parameters.config
};
}
/**
* Returns the HTTP req object
*/
#createRequest() {
const req = this.#parameters.req || new IncomingMessage(new Socket());
if (this.#parameters.url) {
req.url = this.#parameters.url;
}
if (this.#parameters.method) {
req.method = this.#parameters.method;
}
return req;
}
/**
* Returns the HTTP res object
*/
#createResponse(req) {
return this.#parameters.res || new ServerResponse(req);
}
/**
* Returns an instance of the encryptor to encrypt
* signed URLs
*/
#createEncryption() {
return this.#parameters.encryption || new EncryptionFactory().create();
}
/**
* Merge factory params
*/
merge(params) {
Object.assign(this.#parameters, params);
return this;
}
/**
* Create request
*/
create() {
const req = this.#createRequest();
return new Request(
req,
this.#createResponse(req),
this.#createEncryption(),
this.#getConfig(),
new QsParserFactory().create()
);
}
};
// factories/response.ts
import { Socket as Socket2 } from "node:net";
import { IncomingMessage as IncomingMessage2, ServerResponse as ServerResponse2 } from "node:http";
import { EncryptionFactory as EncryptionFactory3 } from "@adonisjs/encryption/factories";
// factories/router.ts
import { AppFactory } from "@adonisjs/application/factories";
import { EncryptionFactory as EncryptionFactory2 } from "@adonisjs/encryption/factories";
var RouterFactory = class {
#parameters = {};
/**
* Returns an instance of the application class
*/
#getApp() {
return this.#parameters.app || new AppFactory().create(new URL("./app/", import.meta.url), () => {
});
}
/**
* Returns an instance of the encryptor to encrypt
* signed URLs
*/
#createEncryption() {
return this.#parameters.encryption || new EncryptionFactory2().create();
}
/**
* Merge factory params
*/
merge(params) {
Object.assign(this.#parameters, params);
return this;
}
/**
* Create router instance
*/
create() {
return new Router(this.#getApp(), this.#createEncryption(), new QsParserFactory().create());
}
};
// factories/response.ts
var ResponseFactory = class {
#parameters = {};
/**
* Returns the config for the request class
*/
#getConfig() {
return {
etag: false,
jsonpCallbackName: "callback",
cookie: {
maxAge: 90,
path: "/",
httpOnly: true,
sameSite: false,
secure: false
},
...this.#parameters.config
};
}
/**
* Returns the HTTP req object
*/
#createRequest() {
return this.#parameters.req || new IncomingMessage2(new Socket2());
}
/**
* Returns an instance of the router
*/
#createRouter() {
return this.#parameters.router || new RouterFactory().create();
}
/**
* Returns the HTTP res object
*/
#createResponse(req) {
return this.#parameters.res || new ServerResponse2(req);
}
/**
* Returns an instance of the encryptor to encrypt
* signed URLs
*/
#createEncryption() {
return this.#parameters.encryption || new EncryptionFactory3().create();
}
/**
* Merge factory params
*/
merge(params) {
Object.assign(this.#parameters, params);
return this;
}
/**
* Create response class instance
*/
create() {
const req = this.#createRequest();
return new Response(
req,
this.#createResponse(req),
this.#createEncryption(),
this.#getConfig(),
this.#createRouter(),
new QsParserFactory().create()
);
}
};
// factories/http_context.ts
var HttpContextFactory = class {
#parameters = {};
/**
* Returns the request class instance
*/
#createRequest() {
return this.#parameters.request || new RequestFactory().create();
}
/**
* Returns the response class instance
*/
#createResponse() {
return this.#parameters.response || new ResponseFactory().create();
}
/**
* Returns an instance of the logger class
*/
#createLogger() {
return this.#parameters.logger || new LoggerFactory().create();
}
/**
* Merge factory params
*/
merge(params) {
Object.assign(this.#parameters, params);
return this;
}
/**
* Create request
*/
create() {
return new HttpContext(
this.#createRequest(),
this.#createResponse(),
this.#createLogger(),
new Container().createResolver()
);
}
};
// factories/server_factory.ts
import { Logger } from "@adonisjs/logger";
import { Emitter } from "@adonisjs/events";
import { AppFactory as AppFactory2 } from "@adonisjs/application/factories";
import { EncryptionFactory as EncryptionFactory4 } from "@adonisjs/encryption/factories";
var ServerFactory = class {
#parameters = {};
/**
* Returns the emitter instance
*/
#getEmitter() {
return this.#parameters.emitter || new Emitter(this.#getApp());
}
/**
* Returns the logger instance
*/
#getLogger() {
return this.#parameters.logger || new Logger({ enabled: false });
}
/**
* Returns the config for the server class
*/
#getConfig() {
return defineConfig(this.#parameters.config || {});
}
/**
* Returns an instance of the application class
*/
#getApp() {
return this.#parameters.app || new AppFactory2().create(new URL("./app/", import.meta.url), () => {
});
}
/**
* Returns an instance of the encryptor to encrypt
* signed URLs
*/
#createEncryption() {
return this.#parameters.encryption || new EncryptionFactory4().create();
}
/**
* Merge factory params
*/
merge(params) {
Object.assign(this.#parameters, params);
return this;
}
/**
* Create server instance
*/
create() {
return new Server(
this.#getApp(),
this.#createEncryption(),
this.#getEmitter(),
this.#getLogger(),
this.#getConfig()
);
}
};
export {
HttpContextFactory,
QsParserFactory,
RequestFactory,
ResponseFactory,
RouterFactory,
ServerFactory
};
//# sourceMappingURL=main.js.map

@@ -1,22 +0,309 @@

/*
* @adonisjs/http-server
*
* (c) AdonisJS
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
export { Request } from './src/request.js';
export { Response } from './src/response.js';
export { Redirect } from './src/redirect.js';
export { Server } from './src/server/main.js';
export { Router } from './src/router/main.js';
export { Route } from './src/router/route.js';
export * as errors from './src/exceptions.js';
export { BriskRoute } from './src/router/brisk.js';
export { RouteGroup } from './src/router/group.js';
export { defineConfig } from './src/define_config.js';
export { CookieClient } from './src/cookies/client.js';
export { HttpContext } from './src/http_context/main.js';
export { RouteResource } from './src/router/resource.js';
export { ExceptionHandler } from './src/exception_handler.js';
import {
BriskRoute,
CookieClient,
E_CANNOT_LOOKUP_ROUTE,
E_HTTP_EXCEPTION,
E_HTTP_REQUEST_ABORTED,
E_ROUTE_NOT_FOUND,
HttpContext,
Redirect,
Request,
Response,
Route,
RouteGroup,
RouteResource,
Router,
Server,
defineConfig,
exceptions_exports,
parseRange
} from "./chunk-Z63E3STR.js";
// src/exception_handler.ts
import is from "@sindresorhus/is";
import Macroable from "@poppinss/macroable";
var ExceptionHandler = class extends Macroable {
/**
* Computed from the status pages property
*/
#expandedStatusPages;
/**
* Whether or not to render debug info. When set to true, the errors
* will have the complete error stack.
*/
debug = process.env.NODE_ENV !== "production";
/**
* Whether or not to render status pages. When set to true, the unhandled
* errors with matching status codes will be rendered using a status
* page.
*/
renderStatusPages = process.env.NODE_ENV === "production";
/**
* A collection of error status code range and the view to render.
*/
statusPages = {};
/**
* Enable/disable errors reporting
*/
reportErrors = true;
/**
* An array of exception classes to ignore when
* reporting an error
*/
ignoreExceptions = [
E_HTTP_EXCEPTION,
E_ROUTE_NOT_FOUND,
E_CANNOT_LOOKUP_ROUTE,
E_HTTP_REQUEST_ABORTED
];
/**
* An array of HTTP status codes to ignore when reporting
* an error
*/
ignoreStatuses = [400, 422, 401];
/**
* An array of error codes to ignore when reporting
* an error
*/
ignoreCodes = [];
/**
* Expands status pages
*/
#expandStatusPages() {
if (!this.#expandedStatusPages) {
this.#expandedStatusPages = Object.keys(this.statusPages).reduce(
(result, range) => {
const renderer = this.statusPages[range];
result = Object.assign(result, parseRange(range, renderer));
return result;
},
{}
);
}
return this.#expandedStatusPages;
}
/**
* Forcefully tweaking the type of the error object to
* have known properties.
*/
#toHttpError(error) {
const httpError = is.object(error) ? error : new Error(String(error));
httpError.message = httpError.message || "Internal server error";
httpError.status = httpError.status || 500;
return httpError;
}
/**
* Error reporting context
*/
context(ctx) {
const requestId = ctx.request.id();
return requestId ? {
"x-request-id": requestId
} : {};
}
/**
* Returns the log level for an error based upon the error
* status code.
*/
getErrorLogLevel(error) {
if (error.status >= 500) {
return "error";
}
if (error.status >= 400) {
return "warn";
}
return "info";
}
/**
* A boolean to control if errors should be rendered with
* all the available debugging info.
*/
isDebuggingEnabled(_) {
return this.debug;
}
/**
* Returns a boolean by checking if an error should be reported.
*/
shouldReport(error) {
if (this.reportErrors === false) {
return false;
}
if (this.ignoreStatuses.includes(error.status)) {
return false;
}
if (error.code && this.ignoreCodes.includes(error.code)) {
return false;
}
if (this.ignoreExceptions.find((exception) => error instanceof exception)) {
return false;
}
return true;
}
/**
* Renders an error to JSON response
*/
async renderErrorAsJSON(error, ctx) {
if (this.isDebuggingEnabled(ctx)) {
const { default: Youch } = await import("youch");
const json = await new Youch(error, ctx.request.request).toJSON();
ctx.response.status(error.status).send(json.error);
return;
}
ctx.response.status(error.status).send({ message: error.message });
}
/**
* Renders an error to JSON API response
*/
async renderErrorAsJSONAPI(error, ctx) {
if (this.isDebuggingEnabled(ctx)) {
const { default: Youch } = await import("youch");
const json = await new Youch(error, ctx.request.request).toJSON();
ctx.response.status(error.status).send(json.error);
return;
}
ctx.response.status(error.status).send({
errors: [
{
title: error.message,
code: error.code,
status: error.status
}
]
});
}
/**
* Renders an error to HTML response
*/
async renderErrorAsHTML(error, ctx) {
if (this.isDebuggingEnabled(ctx)) {
const { default: Youch } = await import("youch");
const html = await new Youch(error, ctx.request.request).toHTML({
cspNonce: "nonce" in ctx.response ? ctx.response.nonce : void 0
});
ctx.response.status(error.status).send(html);
return;
}
ctx.response.status(error.status).send(`<p> ${error.message} </p>`);
}
/**
* Renders the validation error message to a JSON
* response
*/
async renderValidationErrorAsJSON(error, ctx) {
ctx.response.status(error.status).send({
errors: error.messages
});
}
/**
* Renders the validation error message as per JSON API
* spec
*/
async renderValidationErrorAsJSONAPI(error, ctx) {
ctx.response.status(error.status).send({
errors: error.messages.map((message) => {
return {
title: message.message,
code: message.rule,
source: {
pointer: message.field
},
meta: message.meta
};
})
});
}
/**
* Renders the validation error as an HTML string
*/
async renderValidationErrorAsHTML(error, ctx) {
ctx.response.status(error.status).type("html").send(
error.messages.map((message) => {
return `${message.field} - ${message.message}`;
}).join("<br />")
);
}
/**
* Renders the error to response
*/
renderError(error, ctx) {
switch (ctx.request.accepts(["html", "application/vnd.api+json", "json"])) {
case "application/vnd.api+json":
return this.renderErrorAsJSONAPI(error, ctx);
case "json":
return this.renderErrorAsJSON(error, ctx);
case "html":
default:
return this.renderErrorAsHTML(error, ctx);
}
}
/**
* Renders the validation error to response
*/
renderValidationError(error, ctx) {
switch (ctx.request.accepts(["html", "application/vnd.api+json", "json"])) {
case "application/vnd.api+json":
return this.renderValidationErrorAsJSONAPI(error, ctx);
case "json":
return this.renderValidationErrorAsJSON(error, ctx);
case "html":
default:
return this.renderValidationErrorAsHTML(error, ctx);
}
}
/**
* Reports an error during an HTTP request
*/
async report(error, ctx) {
const httpError = this.#toHttpError(error);
if (!this.shouldReport(httpError)) {
return;
}
if (typeof httpError.report === "function") {
httpError.report(httpError, ctx);
return;
}
const level = this.getErrorLogLevel(httpError);
ctx.logger.log(
level,
{
...level === "error" || level === "fatal" ? { err: httpError } : {},
...this.context(ctx)
},
httpError.message
);
}
/**
* Handles the error during the HTTP request.
*/
async handle(error, ctx) {
const httpError = this.#toHttpError(error);
if (typeof httpError.handle === "function") {
return httpError.handle(httpError, ctx);
}
if (httpError.code === "E_VALIDATION_ERROR" && "messages" in httpError) {
return this.renderValidationError(httpError, ctx);
}
const statusPages = this.#expandStatusPages();
if (this.renderStatusPages && statusPages[httpError.status]) {
return statusPages[httpError.status](httpError, ctx);
}
return this.renderError(httpError, ctx);
}
};
export {
BriskRoute,
CookieClient,
ExceptionHandler,
HttpContext,
Redirect,
Request,
Response,
Route,
RouteGroup,
RouteResource,
Router,
Server,
defineConfig,
exceptions_exports as errors
};
//# sourceMappingURL=index.js.map

4

build/src/router/lookup_store/main.d.ts

@@ -46,5 +46,3 @@ import type { Encryption } from '@adonisjs/encryption';

has(routeIdentifier: string, domain?: string): boolean;
toJSON(): {
[domain: string]: RouteJSON[];
};
toJSON(): Record<string, RouteJSON[]>;
}

@@ -8,3 +8,3 @@ import type { RouteJSON } from '../../types/route.js';

#private;
constructor(routes: RouteJSON[]);
register(route: RouteJSON): void;
/**

@@ -22,2 +22,6 @@ * Find a route by indentifier

has(routeIdentifier: string): boolean;
/**
* Returns an array of registered routes
*/
toJSON(): RouteJSON[];
}

@@ -97,7 +97,7 @@ import type { Encryption } from '@adonisjs/encryption';

*/
resource(resource: string, controller: string | LazyImport<Constructor<any>> | Constructor<any>): RouteResource;
resource(resource: string, controller: string | LazyImport<Constructor<any>> | Constructor<any>): RouteResource<import("../types/route.js").ResourceActionNames>;
/**
* Register a route resource with shallow nested routes.
*/
shallowResource(resource: string, controller: string | LazyImport<Constructor<any>> | Constructor<any>): RouteResource;
shallowResource(resource: string, controller: string | LazyImport<Constructor<any>> | Constructor<any>): RouteResource<import("../types/route.js").ResourceActionNames>;
/**

@@ -104,0 +104,0 @@ * Returns a brisk route instance for a given URL pattern

import Macroable from '@poppinss/macroable';
import type { Application } from '@adonisjs/application';
import { Route } from './route.js';
import type { Constructor, LazyImport } from '../types/base.js';
import type { ParsedGlobalMiddleware } from '../types/middleware.js';
import type { Constructor, LazyImport, OneOrMore } from '../types/base.js';
import type { MiddlewareFn, ParsedGlobalMiddleware, ParsedNamedMiddleware } from '../types/middleware.js';
import type { ResourceActionNames, RouteMatcher, RouteMatchers } from '../types/route.js';

@@ -10,3 +10,3 @@ /**

*/
export declare class RouteResource extends Macroable {
export declare class RouteResource<ActionNames extends ResourceActionNames = ResourceActionNames> extends Macroable {
#private;

@@ -26,7 +26,7 @@ /**

*/
only(names: ResourceActionNames[]): this;
only<Name extends ActionNames>(names: Name[]): RouteResource<Name>;
/**
* Register all routes, except the one's defined
*/
except(names: ResourceActionNames[]): this;
except<Name extends ActionNames>(names: Name[]): RouteResource<Exclude<ActionNames, Name>>;
/**

@@ -36,3 +36,3 @@ * Register api only routes. The `create` and `edit` routes, which

*/
apiOnly(): this;
apiOnly(): RouteResource<Exclude<ActionNames, 'create' | 'edit'>>;
/**

@@ -46,3 +46,3 @@ * Define matcher for params inside the resource

tap(callback: (route: Route) => void): this;
tap(actions: ResourceActionNames | ResourceActionNames[], callback: (route: Route) => void): this;
tap(actions: ActionNames | ActionNames[], callback: (route: Route) => void): this;
/**

@@ -55,2 +55,14 @@ * Set the param name for a given resource

/**
* Define one or more middleware on the routes created by
* the resource.
*
* Calling this method multiple times will append middleware
* to existing list.
*/
use(actions: ActionNames | ActionNames[] | '*', middleware: OneOrMore<MiddlewareFn | ParsedNamedMiddleware>): this;
/**
* @alias use
*/
middleware(actions: ActionNames | ActionNames[] | '*', middleware: OneOrMore<MiddlewareFn | ParsedNamedMiddleware>): this;
/**
* Prepend name to all the routes

@@ -57,0 +69,0 @@ */

@@ -1,15 +0,1 @@

/*
* @adonisjs/http-server
*
* (c) AdonisJS
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
export * from './base.js';
export * from './middleware.js';
export * from './qs.js';
export * from './request.js';
export * from './response.js';
export * from './route.js';
export * from './server.js';
//# sourceMappingURL=main.js.map
{
"name": "@adonisjs/http-server",
"version": "7.0.0-1",
"version": "7.0.0-2",
"description": "AdonisJS HTTP server with support packed with Routing and Cookies",

@@ -8,6 +8,5 @@ "main": "build/index.js",

"files": [
"build/factories",
"build/src",
"build/index.d.ts",
"build/index.js"
"build",
"!build/bin",
"!build/tests"
],

@@ -27,3 +26,4 @@ "exports": {

"typecheck": "tsc --noEmit",
"compile": "npm run lint && npm run clean && tsc",
"precompile": "npm run lint && npm run clean",
"compile": "tsup-node && tsc --emitDeclarationOnly --declaration",
"build": "npm run compile",

@@ -48,35 +48,35 @@ "prebenchmark": "npm run build",

"devDependencies": {
"@adonisjs/application": "^8.0.0-0",
"@adonisjs/encryption": "^5.1.2-3",
"@adonisjs/eslint-config": "^1.1.8",
"@adonisjs/events": "^9.0.0-0",
"@adonisjs/fold": "^9.9.3-10",
"@adonisjs/logger": "^5.4.2-6",
"@adonisjs/prettier-config": "^1.1.8",
"@adonisjs/tsconfig": "^1.1.8",
"@commitlint/cli": "^17.8.0",
"@commitlint/config-conventional": "^17.8.0",
"@adonisjs/application": "^8.0.0-2",
"@adonisjs/encryption": "^5.1.2-4",
"@adonisjs/eslint-config": "^1.1.9",
"@adonisjs/events": "^9.0.0-1",
"@adonisjs/fold": "^9.9.3-11",
"@adonisjs/logger": "^5.4.2-7",
"@adonisjs/prettier-config": "^1.1.9",
"@adonisjs/tsconfig": "^1.1.9",
"@commitlint/cli": "^18.4.3",
"@commitlint/config-conventional": "^18.4.3",
"@fastify/middie": "^8.3.0",
"@japa/assert": "^2.0.0",
"@japa/assert": "^2.0.1",
"@japa/expect-type": "^2.0.0",
"@japa/runner": "^3.0.2",
"@swc/core": "1.3.82",
"@types/accepts": "^1.3.5",
"@types/content-disposition": "^0.5.6",
"@types/cookie": "^0.5.2",
"@types/destroy": "^1.0.1",
"@types/encodeurl": "^1.0.0",
"@types/etag": "^1.8.1",
"@types/fresh": "^0.5.0",
"@types/fs-extra": "^11.0.2",
"@japa/runner": "^3.1.0",
"@swc/core": "^1.3.99",
"@types/accepts": "^1.3.7",
"@types/content-disposition": "^0.5.8",
"@types/cookie": "^0.5.4",
"@types/destroy": "^1.0.3",
"@types/encodeurl": "^1.0.2",
"@types/etag": "^1.8.3",
"@types/fresh": "^0.5.2",
"@types/fs-extra": "^11.0.4",
"@types/http-status-codes": "^1.2.0",
"@types/mime-types": "^2.1.2",
"@types/node": "^20.8.6",
"@types/on-finished": "^2.3.2",
"@types/pem": "^1.14.2",
"@types/proxy-addr": "^2.0.1",
"@types/qs": "^6.9.8",
"@types/supertest": "^2.0.14",
"@types/type-is": "^1.6.4",
"@types/vary": "^1.1.1",
"@types/mime-types": "^2.1.4",
"@types/node": "^20.9.4",
"@types/on-finished": "^2.3.4",
"@types/pem": "^1.14.4",
"@types/proxy-addr": "^2.0.3",
"@types/qs": "^6.9.10",
"@types/supertest": "^2.0.16",
"@types/type-is": "^1.6.6",
"@types/vary": "^1.1.3",
"@vinejs/vine": "^1.6.0",

@@ -87,3 +87,3 @@ "autocannon": "^7.12.0",

"del-cli": "^5.1.0",
"eslint": "^8.51.0",
"eslint": "^8.54.0",
"fastify": "^4.24.2",

@@ -97,8 +97,8 @@ "fs-extra": "^11.1.1",

"pem": "^1.14.8",
"prettier": "^3.0.3",
"prettier": "^3.1.0",
"reflect-metadata": "^0.1.13",
"supertest": "^6.3.3",
"ts-node": "^10.9.1",
"tsup": "^7.2.0",
"typescript": "^5.2.2"
"tsup": "^8.0.1",
"typescript": "5.2.2"
},

@@ -109,8 +109,8 @@ "dependencies": {

"@poppinss/matchit": "^3.1.2",
"@poppinss/middleware": "^3.2.0",
"@poppinss/utils": "^6.5.0",
"@sindresorhus/is": "^6.0.1",
"@poppinss/middleware": "^3.2.1",
"@poppinss/utils": "^6.5.1",
"@sindresorhus/is": "^6.1.0",
"accepts": "^1.3.8",
"content-disposition": "^0.5.4",
"cookie": "^0.5.0",
"cookie": "^0.6.0",
"destroy": "^1.2.0",

@@ -127,10 +127,10 @@ "encodeurl": "^1.0.2",

"vary": "^1.1.2",
"youch": "^3.3.2"
"youch": "^3.3.3"
},
"peerDependencies": {
"@adonisjs/application": "^8.0.0-0",
"@adonisjs/encryption": "^5.1.2-3",
"@adonisjs/events": "^9.0.0-0",
"@adonisjs/fold": "^9.9.3-10",
"@adonisjs/logger": "^5.4.2-6"
"@adonisjs/application": "^8.0.0-2",
"@adonisjs/encryption": "^5.1.2-4",
"@adonisjs/events": "^9.0.0-1",
"@adonisjs/fold": "^9.9.3-11",
"@adonisjs/logger": "^5.4.2-7"
},

@@ -184,5 +184,6 @@ "repository": {

"format": "esm",
"dts": true,
"dts": false,
"sourcemap": true,
"target": "esnext"
}
}
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