Sign In

envalid

Package Overview
Dependencies
Maintainers
1
Versions
60
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

envalid - npm Package Compare versions

Comparing version
8.0.0-beta.1
to
8.0.0-beta.2
+2
-2
dist/middleware.d.ts

@@ -1,4 +0,4 @@

import { CleanedEnvAccessors } from './types';
export declare const strictProxyMiddleware: <T extends object>(envObj: T, rawEnv: unknown) => T;
import { CleanedEnvAccessors, StrictProxyMiddlewareOptions } from './types';
export declare const strictProxyMiddleware: <T extends object>(envObj: T, rawEnv: unknown, options?: StrictProxyMiddlewareOptions) => T;
export declare const accessorMiddleware: <T>(envObj: T, rawEnv: unknown) => T & CleanedEnvAccessors;
export declare const applyDefaultMiddleware: <T>(cleanedEnv: T, rawEnv: unknown) => T & CleanedEnvAccessors;
"use strict";
exports.__esModule = true;
exports.applyDefaultMiddleware = exports.accessorMiddleware = exports.strictProxyMiddleware = void 0;
var strictProxyMiddleware = function (envObj, rawEnv) {
var strictProxyMiddleware = function (envObj, rawEnv, options) {
if (options === void 0) { options = {}; }
var _a = options.extraInspectables, extraInspectables = _a === void 0 ? [] : _a;
var inspectables = [

@@ -30,3 +32,5 @@ 'length',

// `envObj.hasOwnProperty('string')` to work.
if (inspectables.includes(name) || inspectSymbolStrings.includes(name.toString())) {
if (inspectables.includes(name) ||
inspectSymbolStrings.includes(name.toString()) ||
extraInspectables.includes(name)) {
// @ts-expect-error TS doesn't like symbol types as indexers

@@ -33,0 +37,0 @@ return target[name];

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

{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":";;;AAEO,IAAM,qBAAqB,GAAG,UAAmB,MAAS,EAAE,MAAe;IAChF,IAAM,YAAY,GAAG;QACnB,QAAQ;QACR,SAAS;QACT,gBAAgB;QAChB,QAAQ;QACR,MAAM,CAAC,WAAW;QAClB,MAAM,CAAC,QAAQ;QAEf,WAAW;QACX,iBAAiB;QACjB,UAAU;QAEV,8BAA8B;QAC9B,UAAU;QAEV,4EAA4E;QAC5E,MAAM;QACN,iDAAiD;QACjD,YAAY;KACb,CAAA;IACD,IAAM,oBAAoB,GAAG,CAAC,6BAA6B,EAAE,oCAAoC,CAAC,CAAA;IAElG,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;QACvB,GAAG,YAAC,MAAM,EAAE,IAAY;;YACtB,2DAA2D;YAC3D,uEAAuE;YACvE,uEAAuE;YACvE,6CAA6C;YAC7C,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE;gBACjF,4DAA4D;gBAC5D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAA;aACpB;YAED,IAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;YAC7C,IAAI,CAAC,SAAS,EAAE;gBACd,IAAI,OAAO,MAAM,KAAK,QAAQ,KAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,cAAc,uDAAG,IAAI,CAAC,CAAA,EAAE;oBAChE,MAAM,IAAI,cAAc,CACtB,4BAAqB,IAAI,iHAA8G,CACxI,CAAA;iBACF;gBAED,MAAM,IAAI,cAAc,CAAC,uCAAgC,IAAI,CAAE,CAAC,CAAA;aACjE;YAED,OAAO,MAAM,CAAC,IAAe,CAAC,CAAA;QAChC,CAAC;QAED,GAAG,YAAC,OAAO,EAAE,IAAY;YACvB,MAAM,IAAI,SAAS,CAAC,yDAAkD,IAAI,CAAE,CAAC,CAAA;QAC/E,CAAC;KACF,CAAC,CAAA;AACJ,CAAC,CAAA;AApDY,QAAA,qBAAqB,yBAoDjC;AAEM,IAAM,kBAAkB,GAAG,UAAI,MAAS,EAAE,MAAe;IAC9D,wEAAwE;IACxE,gFAAgF;IAEhF,mEAAmE;IACnE,IAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAA;IAE1D,4CAA4C;IAC5C,IAAM,MAAM,GAAG,CAAC,eAAe,IAAI,eAAe,KAAK,YAAY,CAAA;IAEnE,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE;QAC9B,aAAa,EAAE,EAAE,KAAK,EAAE,eAAe,KAAK,aAAa,EAAE;QAC3D,KAAK,EAAE,EAAE,KAAK,EAAE,eAAe,KAAK,aAAa,EAAE;QACnD,YAAY,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;QAC/B,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;QACzB,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,KAAK,MAAM,EAAE;KAC9C,CAAC,CAAA;IACF,OAAO,MAAiC,CAAA;AAC1C,CAAC,CAAA;AAlBY,QAAA,kBAAkB,sBAkB9B;AAEM,IAAM,sBAAsB,GAAG,UAAI,UAAa,EAAE,MAAe;IACtE,mGAAmG;IACnG,qGAAqG;IACrG,qEAAqE;IACrE,4EAA4E;IAC5E,OAAO,IAAA,6BAAqB,EAAC,IAAA,0BAAkB,EAAC,UAAU,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAA;AAC9E,CAAC,CAAA;AANY,QAAA,sBAAsB,0BAMlC"}
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"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"}

@@ -107,2 +107,10 @@ export interface Spec<T> {

}
export interface StrictProxyMiddlewareOptions {
/**
* A list of extra inspectable properties to add to the middleware.
*
* This is useful if you want to add support for framework-specific values.
*/
extraInspectables?: string[];
}
export {};
{
"name": "envalid",
"version": "8.0.0-beta.1",
"version": "8.0.0-beta.2",
"description": "Validation for your environment variables",

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

@@ -1,4 +0,9 @@

import { CleanedEnvAccessors } from './types'
import { CleanedEnvAccessors, StrictProxyMiddlewareOptions } from './types'
export const strictProxyMiddleware = <T extends object>(envObj: T, rawEnv: unknown) => {
export const strictProxyMiddleware = <T extends object>(
envObj: T,
rawEnv: unknown,
options: StrictProxyMiddlewareOptions = {},
) => {
const { extraInspectables = [] } = options
const inspectables = [

@@ -32,3 +37,7 @@ 'length',

// `envObj.hasOwnProperty('string')` to work.
if (inspectables.includes(name) || inspectSymbolStrings.includes(name.toString())) {
if (
inspectables.includes(name) ||
inspectSymbolStrings.includes(name.toString()) ||
extraInspectables.includes(name)
) {
// @ts-expect-error TS doesn't like symbol types as indexers

@@ -35,0 +44,0 @@ return target[name]

@@ -139,1 +139,10 @@ export interface Spec<T> {

}
export interface StrictProxyMiddlewareOptions {
/**
* A list of extra inspectable properties to add to the middleware.
*
* This is useful if you want to add support for framework-specific values.
*/
extraInspectables?: string[]
}