Socket
Socket
Sign inDemoInstall

elysia

Package Overview
Dependencies
Maintainers
1
Versions
409
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

elysia - npm Package Compare versions

Comparing version 1.0.21 to 1.0.22

5

dist/cjs/cookies.js

@@ -365,3 +365,3 @@ "use strict";

};
var File = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var File2 = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var Files = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type(

@@ -512,3 +512,3 @@ "Files",

},
File,
File: File2,
Files: (options = {}) => t.Transform(Files(options)).Decode((value) => {

@@ -720,2 +720,3 @@ if (Array.isArray(value))

};
var ELYSIA_FORM_DATA = Symbol("ElysiaFormData");

@@ -722,0 +723,0 @@ // src/cookies.ts

@@ -277,3 +277,3 @@ "use strict";

};
var File = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var File2 = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var Files = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type(

@@ -424,3 +424,3 @@ "Files",

},
File,
File: File2,
Files: (options = {}) => t.Transform(Files(options)).Decode((value) => {

@@ -587,2 +587,3 @@ if (Array.isArray(value))

var encoder = new TextEncoder();
var ELYSIA_FORM_DATA = Symbol("ElysiaFormData");

@@ -589,0 +590,0 @@ // src/error.ts

127

dist/cjs/handler.js

@@ -475,3 +475,3 @@ "use strict";

};
var File = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var File2 = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var Files = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type(

@@ -622,3 +622,3 @@ "Files",

},
File,
File: File2,
Files: (options = {}) => t.Transform(Files(options)).Decode((value) => {

@@ -785,2 +785,20 @@ if (Array.isArray(value))

var encoder = new TextEncoder();
var ELYSIA_FORM_DATA = Symbol("ElysiaFormData");
var form = (items) => {
const formData = new FormData();
for (const [key, value] of Object.entries(items)) {
if (Array.isArray(value)) {
for (const v of value) {
if (value instanceof File)
formData.append(key, value, value.name);
formData.append(key, v);
}
continue;
}
if (value instanceof File)
formData.append(key, value, value.name);
formData.append(key, value);
}
return formData;
};

@@ -893,5 +911,17 @@ // src/handler.ts

return handleFile(response, set);
case "Object":
case "Array":
return Response.json(response, set);
case "Object":
for (const value in Object.values(response)) {
switch (value?.constructor?.name) {
case "Blob":
case "File":
case "ArrayBuffer":
case "FileRef":
return new Response(form(response));
default:
break;
}
}
return Response.json(response, set);
case "ReadableStream":

@@ -970,2 +1000,4 @@ if (!set.headers["content-type"]?.startsWith(

return new Response(response?.toString(), set);
case "FormData":
return new Response(response, set);
default:

@@ -1030,9 +1062,20 @@ if (response instanceof Response) {

return handleFile(response, set);
case "Array":
return Response.json(response);
case "Object":
case "Array":
return new Response(JSON.stringify(response), {
headers: {
"content-type": "application/json"
for (const value in Object.values(response)) {
switch (value?.constructor?.name) {
case "Blob":
case "File":
case "ArrayBuffer":
case "FileRef":
return new Response(
form(response),
set
);
default:
break;
}
});
}
return Response.json(response, set);
case "ReadableStream":

@@ -1084,2 +1127,4 @@ request?.signal.addEventListener(

return new Response(response?.toString(), set);
case "FormData":
return new Response(response, set);
default:

@@ -1139,5 +1184,20 @@ if (response instanceof Response)

return handleFile(response, set);
case "Object":
case "Array":
return Response.json(response, set);
case "Object":
for (const value in Object.values(response)) {
switch (value?.constructor?.name) {
case "Blob":
case "File":
case "ArrayBuffer":
case "FileRef":
return new Response(
form(response),
set
);
default:
break;
}
}
return Response.json(response, set);
case "ReadableStream":

@@ -1214,2 +1274,4 @@ if (!set.headers["content-type"]?.startsWith(

);
case "FormData":
return new Response(response);
case "Cookie":

@@ -1274,9 +1336,20 @@ if (response instanceof Cookie)

return handleFile(response, set);
case "Array":
return Response.json(response);
case "Object":
case "Array":
return new Response(JSON.stringify(response), {
headers: {
"content-type": "application/json"
for (const value in Object.values(response)) {
switch (value?.constructor?.name) {
case "Blob":
case "File":
case "ArrayBuffer":
case "FileRef":
return new Response(
form(response),
set
);
default:
break;
}
});
}
return Response.json(response, set);
case "ReadableStream":

@@ -1327,2 +1400,4 @@ request?.signal.addEventListener(

return new Response(response?.toString(), set);
case "FormData":
return new Response(response);
default:

@@ -1367,9 +1442,19 @@ if (response instanceof Response)

return handleFile(response);
case "Array":
return Response.json(response);
case "Object":
case "Array":
return new Response(JSON.stringify(response), {
headers: {
"content-type": "application/json"
}
});
form:
for (const value of Object.values(response))
switch (value?.constructor?.name) {
case "Blob":
case "File":
case "ArrayBuffer":
case "FileRef":
return new Response(form(response));
case "Object":
break form;
default:
break;
}
return Response.json(response);
case "ReadableStream":

@@ -1414,2 +1499,4 @@ request?.signal.addEventListener(

return new Response(response.toString());
case "FormData":
return new Response(response);
default:

@@ -1416,0 +1503,0 @@ if (response instanceof Response)

@@ -301,2 +301,3 @@ "use strict";

var encoder = new TextEncoder();
var ELYSIA_FORM_DATA = Symbol("ElysiaFormData");

@@ -462,3 +463,3 @@ // src/error.ts

};
var File = import_typebox2.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var File2 = import_typebox2.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var Files = import_typebox2.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type(

@@ -609,3 +610,3 @@ "Files",

},
File,
File: File2,
Files: (options = {}) => t.Transform(Files(options)).Decode((value) => {

@@ -612,0 +613,0 @@ if (Array.isArray(value))

/// <reference types="bun-types" />
/// <reference types="node" />
/// <reference types="bun-types" />
/// <reference types="bun-types" />
import type { Elysia } from '.';
import type { Serve, Server, WebSocketHandler } from 'bun';
import type { BunFile, Serve, Server, WebSocketHandler } from 'bun';
import type { TSchema, TObject, StaticDecode, TAnySchema } from '@sinclair/typebox';

@@ -179,4 +180,4 @@ import type { TypeCheck } from '@sinclair/typebox/compiler';

cookie: UnwrapSchema<Schema['cookie'], Definitions>;
response: Schema['response'] extends TSchema | string ? UnwrapSchema<Schema['response'], Definitions> : Schema['response'] extends SuccessfulResponse<TAnySchema | string> ? {
[k in keyof Schema['response']]: UnwrapSchema<Schema['response'][k], Definitions>;
response: Schema['response'] extends TSchema | string ? CoExist<UnwrapSchema<Schema['response'], Definitions>, File, BunFile> : Schema['response'] extends SuccessfulResponse<TAnySchema | string> ? {
[k in keyof Schema['response']]: CoExist<UnwrapSchema<Schema['response'][k], Definitions>, File, BunFile>;
} : unknown | void;

@@ -239,2 +240,8 @@ }

}, Path extends string = ''> = (context: Context<Route, Singleton, Path>) => Route['response'] extends SuccessfulResponse ? Response | MaybePromise<Route['response'][keyof Route['response']]> : Response | MaybePromise<Route['response']>;
export type Replace<Original, Target, With> = Original extends Record<string, unknown> ? {
[K in keyof Original]: Original[K] extends Target ? With : Original[K];
} : Original extends Target ? With : Original;
export type CoExist<Original, Target, With> = Original extends Record<string, unknown> ? {
[K in keyof Original]: Original[K] extends Target ? Original[K] | With : Original[K];
} : Original extends Target ? Original | With : Original;
export type InlineHandler<Route extends RouteSchema = {}, Singleton extends SingletonBase = {

@@ -577,3 +584,3 @@ decorator: {};

export type CreateEden<Path extends string, Property extends Record<string, unknown> = {}> = Path extends `/${infer Rest}` ? _CreateEden<Rest, Property> : Path extends '' ? _CreateEden<'index', Property> : _CreateEden<Path, Property>;
export type ComposeElysiaResponse<Response, Handle> = Handle extends (...a: any[]) => infer A ? _ComposeElysiaResponse<Response, Awaited<A>> : _ComposeElysiaResponse<Response, Awaited<Handle>>;
export type ComposeElysiaResponse<Response, Handle> = Handle extends (...a: any[]) => infer A ? _ComposeElysiaResponse<Response, Replace<Awaited<A>, BunFile, File>> : _ComposeElysiaResponse<Response, Replace<Awaited<Handle>, BunFile, File>>;
type _ComposeElysiaResponse<Response, Handle> = Prettify<unknown extends Response ? {

@@ -580,0 +587,0 @@ 200: Exclude<Handle, {

@@ -0,6 +1,11 @@

/// <reference types="node" />
/// <reference types="bun-types" />
/// <reference types="bun-types" />
/// <reference types="bun-types" />
import { TSchema } from '@sinclair/typebox';
import { TypeCheck } from '@sinclair/typebox/compiler';
import type { LifeCycleStore, LocalHook, MaybeArray, InputSchema, LifeCycleType, HookContainer } from './types';
import type { LifeCycleStore, LocalHook, MaybeArray, InputSchema, LifeCycleType, HookContainer, Replace } from './types';
import type { CookieOptions } from './cookies';
import { Sucrose } from './sucrose';
import { BunFile } from 'bun';
export declare const replaceUrlPath: (url: string, pathname: string) => string;

@@ -213,3 +218,10 @@ export declare const mergeDeep: <A extends Record<string, any>, B extends Record<string, any>>(target: A, source: B, { skipKeys }?: {

*/
export declare const redirect: (url: string, status?: number) => import("undici-types").Response;
export declare const redirect: (url: string, status?: 301 | 302 | 303 | 307 | 308) => import("undici-types").Response;
export type redirect = typeof redirect;
export declare const ELYSIA_FORM_DATA: unique symbol;
export type ELYSIA_FORM_DATA = typeof ELYSIA_FORM_DATA;
type ElysiaFormData<T extends Record<string | number, unknown>> = FormData & {
[ELYSIA_FORM_DATA]: Replace<T, BunFile, File>;
};
export declare const form: <const T extends Record<string | number, unknown>>(items: T) => ElysiaFormData<T>;
export {};

@@ -33,2 +33,3 @@ "use strict";

__export(utils_exports, {
ELYSIA_FORM_DATA: () => ELYSIA_FORM_DATA,
InvertedStatusMap: () => InvertedStatusMap,

@@ -43,2 +44,3 @@ PromiseGroup: () => PromiseGroup,

fnToContainer: () => fnToContainer,
form: () => form,
getCookieValidator: () => getCookieValidator,

@@ -392,3 +394,3 @@ getResponseSchemaValidator: () => getResponseSchemaValidator,

};
var File = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var File2 = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var Files = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type(

@@ -539,3 +541,3 @@ "Files",

},
File,
File: File2,
Files: (options = {}) => t.Transform(Files(options)).Decode((value) => {

@@ -1290,10 +1292,24 @@ if (Array.isArray(value))

});
var redirect = (url, status = 301) => new Response(null, {
status,
headers: {
Location: url
var redirect = (url, status = 301) => Response.redirect(url, status);
var ELYSIA_FORM_DATA = Symbol("ElysiaFormData");
var form = (items) => {
const formData = new FormData();
for (const [key, value] of Object.entries(items)) {
if (Array.isArray(value)) {
for (const v of value) {
if (value instanceof File)
formData.append(key, value, value.name);
formData.append(key, v);
}
continue;
}
if (value instanceof File)
formData.append(key, value, value.name);
formData.append(key, value);
}
});
return formData;
};
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
ELYSIA_FORM_DATA,
InvertedStatusMap,

@@ -1308,2 +1324,3 @@ PromiseGroup,

fnToContainer,
form,
getCookieValidator,

@@ -1310,0 +1327,0 @@ getResponseSchemaValidator,

@@ -272,3 +272,3 @@ "use strict";

};
var File = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var File2 = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type("File", validateFile);
var Files = import_typebox.TypeRegistry.Get("Files") ?? import_system.TypeSystem.Type(

@@ -419,3 +419,3 @@ "Files",

},
File,
File: File2,
Files: (options = {}) => t.Transform(Files(options)).Decode((value) => {

@@ -582,2 +582,3 @@ if (Array.isArray(value))

var encoder = new TextEncoder();
var ELYSIA_FORM_DATA = Symbol("ElysiaFormData");

@@ -584,0 +585,0 @@ // src/error.ts

/// <reference types="bun-types" />
/// <reference types="node" />
/// <reference types="bun-types" />
/// <reference types="bun-types" />
import type { Elysia } from '.';
import type { Serve, Server, WebSocketHandler } from 'bun';
import type { BunFile, Serve, Server, WebSocketHandler } from 'bun';
import type { TSchema, TObject, StaticDecode, TAnySchema } from '@sinclair/typebox';

@@ -179,4 +180,4 @@ import type { TypeCheck } from '@sinclair/typebox/compiler';

cookie: UnwrapSchema<Schema['cookie'], Definitions>;
response: Schema['response'] extends TSchema | string ? UnwrapSchema<Schema['response'], Definitions> : Schema['response'] extends SuccessfulResponse<TAnySchema | string> ? {
[k in keyof Schema['response']]: UnwrapSchema<Schema['response'][k], Definitions>;
response: Schema['response'] extends TSchema | string ? CoExist<UnwrapSchema<Schema['response'], Definitions>, File, BunFile> : Schema['response'] extends SuccessfulResponse<TAnySchema | string> ? {
[k in keyof Schema['response']]: CoExist<UnwrapSchema<Schema['response'][k], Definitions>, File, BunFile>;
} : unknown | void;

@@ -239,2 +240,8 @@ }

}, Path extends string = ''> = (context: Context<Route, Singleton, Path>) => Route['response'] extends SuccessfulResponse ? Response | MaybePromise<Route['response'][keyof Route['response']]> : Response | MaybePromise<Route['response']>;
export type Replace<Original, Target, With> = Original extends Record<string, unknown> ? {
[K in keyof Original]: Original[K] extends Target ? With : Original[K];
} : Original extends Target ? With : Original;
export type CoExist<Original, Target, With> = Original extends Record<string, unknown> ? {
[K in keyof Original]: Original[K] extends Target ? Original[K] | With : Original[K];
} : Original extends Target ? Original | With : Original;
export type InlineHandler<Route extends RouteSchema = {}, Singleton extends SingletonBase = {

@@ -577,3 +584,3 @@ decorator: {};

export type CreateEden<Path extends string, Property extends Record<string, unknown> = {}> = Path extends `/${infer Rest}` ? _CreateEden<Rest, Property> : Path extends '' ? _CreateEden<'index', Property> : _CreateEden<Path, Property>;
export type ComposeElysiaResponse<Response, Handle> = Handle extends (...a: any[]) => infer A ? _ComposeElysiaResponse<Response, Awaited<A>> : _ComposeElysiaResponse<Response, Awaited<Handle>>;
export type ComposeElysiaResponse<Response, Handle> = Handle extends (...a: any[]) => infer A ? _ComposeElysiaResponse<Response, Replace<Awaited<A>, BunFile, File>> : _ComposeElysiaResponse<Response, Replace<Awaited<Handle>, BunFile, File>>;
type _ComposeElysiaResponse<Response, Handle> = Prettify<unknown extends Response ? {

@@ -580,0 +587,0 @@ 200: Exclude<Handle, {

@@ -0,6 +1,11 @@

/// <reference types="node" />
/// <reference types="bun-types" />
/// <reference types="bun-types" />
/// <reference types="bun-types" />
import { TSchema } from '@sinclair/typebox';
import { TypeCheck } from '@sinclair/typebox/compiler';
import type { LifeCycleStore, LocalHook, MaybeArray, InputSchema, LifeCycleType, HookContainer } from './types';
import type { LifeCycleStore, LocalHook, MaybeArray, InputSchema, LifeCycleType, HookContainer, Replace } from './types';
import type { CookieOptions } from './cookies';
import { Sucrose } from './sucrose';
import { BunFile } from 'bun';
export declare const replaceUrlPath: (url: string, pathname: string) => string;

@@ -213,3 +218,10 @@ export declare const mergeDeep: <A extends Record<string, any>, B extends Record<string, any>>(target: A, source: B, { skipKeys }?: {

*/
export declare const redirect: (url: string, status?: number) => import("undici-types").Response;
export declare const redirect: (url: string, status?: 301 | 302 | 303 | 307 | 308) => import("undici-types").Response;
export type redirect = typeof redirect;
export declare const ELYSIA_FORM_DATA: unique symbol;
export type ELYSIA_FORM_DATA = typeof ELYSIA_FORM_DATA;
type ElysiaFormData<T extends Record<string | number, unknown>> = FormData & {
[ELYSIA_FORM_DATA]: Replace<T, BunFile, File>;
};
export declare const form: <const T extends Record<string | number, unknown>>(items: T) => ElysiaFormData<T>;
export {};
{
"name": "elysia",
"description": "Ergonomic Framework for Human",
"version": "1.0.21",
"version": "1.0.22",
"author": {

@@ -14,2 +14,3 @@ "name": "saltyAom",

"exports": {
"./package.json": "./package.json",
".": {

@@ -16,0 +17,0 @@ "types": "./dist/index.d.ts",

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

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