zaions-express-tool-kit
Advanced tools
Comparing version 0.0.13 to 0.0.14
@@ -1,7 +0,26 @@ | ||
import { Express, Response, Request } from 'express'; | ||
import { RateLimitRequestHandler, Options } from 'express-rate-limit'; | ||
import { Response, Express, Request } from 'express'; | ||
import { Options, RateLimitRequestHandler } from 'express-rate-limit'; | ||
import { ResponseCodeEnum, ResponseStatusEnum } from 'zaions-tool-kit'; | ||
import { Result, ValidationError } from 'express-validator'; | ||
import { z } from 'zod'; | ||
import { ZodType, ZodObject, ZodEffects, z } from 'zod'; | ||
interface IExpressRateLimiterOptions extends Partial<Options> { | ||
} | ||
interface IConfigureZETKOptions { | ||
rateLimiterOptions?: IExpressRateLimiterOptions; | ||
} | ||
interface IApiResponse extends Response<any, Record<string, any>> { | ||
} | ||
interface IAuthCheckResult<A, B> { | ||
user: A; | ||
userRecord: B; | ||
isAdmin: boolean; | ||
isPlayer: boolean; | ||
isEngager: boolean; | ||
userId: string; | ||
userEmail: string; | ||
userPhoneNumber: string; | ||
} | ||
declare const configureZETK: (options: IConfigureZETKOptions) => void; | ||
interface IApplyMiddlewareOptions { | ||
@@ -15,8 +34,2 @@ applyCors?: boolean; | ||
interface IExpressRateLimiterOptions extends Partial<Options> { | ||
} | ||
interface IConfigureZETKOptions { | ||
rateLimiterOptions?: IExpressRateLimiterOptions; | ||
} | ||
declare const applyMiddlewaresOnApp: (expressApp: Express, { applyCors, expressJson, expressUrlEncoded, applyRateLimiter, expressRateLimiter, }: IApplyMiddlewareOptions) => void; | ||
@@ -86,13 +99,3 @@ declare const invalidRequestHandler: (app: Express) => void; | ||
declare const getFormattedErrors: (result: Result<ValidationError>) => Record<string, any[]>; | ||
declare const getValidatedData: (req: Request, options?: { | ||
includeBody?: boolean; | ||
includeCookies?: boolean; | ||
includeHeaders?: boolean; | ||
includeParams?: boolean; | ||
includeQuery?: boolean; | ||
includeOptionals?: boolean; | ||
onlyValidData?: boolean; | ||
}) => Record<string, any>; | ||
declare const checkValidationResult: (req: Request, res: Response) => Record<string, any> | Response<any, Record<string, any>>; | ||
declare const isApiResponse: (value: any) => value is Response; | ||
@@ -102,2 +105,10 @@ declare const getExpressRateLimiterOptions: () => IExpressRateLimiterOptions | null; | ||
declare function numericEnum<TValues extends readonly number[]>(values: TValues): ZodType<TValues[number]>; | ||
declare const validateRequestInputData: <T extends object>({ req, res, validationSchema, }: { | ||
req: Request; | ||
validationSchema: ZodObject<any> | ZodEffects<any>; | ||
res: Response; | ||
}) => Promise<T | Response>; | ||
declare const registerRequestValidationSchema: z.ZodEffects<z.ZodObject<{ | ||
@@ -140,2 +151,2 @@ name: z.ZodString; | ||
export { type IApplyMiddlewareOptions, type IConfigureZETKOptions, type IExpressRateLimiterOptions, applyMiddlewaresOnApp, checkValidationResult, getExpressRateLimiterOptions, getFormattedErrors, getValidatedData, invalidRequestHandler, loginRequestValidationSchema, registerRequestValidationSchema, sendApiFailedResponse, sendApiResponse, sendApiSuccessResponse, sendBadRequestResponse, sendItemExistsErrorResponse, sendNotFoundErrorResponse, sendTooManyRequestsErrorResponse, sendUnAuthenticatedErrorResponse, sendUnAuthorizedErrorResponse, setExpressRateLimiterOptions }; | ||
export { type IApiResponse, type IApplyMiddlewareOptions, type IAuthCheckResult, type IConfigureZETKOptions, type IExpressRateLimiterOptions, applyMiddlewaresOnApp, configureZETK, getExpressRateLimiterOptions, invalidRequestHandler, isApiResponse, loginRequestValidationSchema, numericEnum, registerRequestValidationSchema, sendApiFailedResponse, sendApiResponse, sendApiSuccessResponse, sendBadRequestResponse, sendItemExistsErrorResponse, sendNotFoundErrorResponse, sendTooManyRequestsErrorResponse, sendUnAuthenticatedErrorResponse, sendUnAuthorizedErrorResponse, setExpressRateLimiterOptions, validateRequestInputData }; |
'use strict'; | ||
var F = require('cors'); | ||
var j = require('cors'); | ||
var express = require('express'); | ||
var zaionsToolKit = require('zaions-tool-kit'); | ||
var expressRateLimit = require('express-rate-limit'); | ||
var expressValidator = require('express-validator'); | ||
var zod = require('zod'); | ||
@@ -12,25 +11,26 @@ | ||
var F__default = /*#__PURE__*/_interopDefault(F); | ||
var j__default = /*#__PURE__*/_interopDefault(j); | ||
var S=Object.defineProperty;var x=Object.getOwnPropertySymbols;var A=Object.prototype.hasOwnProperty,M=Object.prototype.propertyIsEnumerable;var E=(e,s,o)=>s in e?S(e,s,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[s]=o,w=(e,s)=>{for(var o in s||(s={}))A.call(s,o)&&E(e,o,s[o]);if(x)for(var o of x(s))M.call(s,o)&&E(e,o,s[o]);return e};var l=(e,s)=>{let{success:o=!0,message:n=zaionsToolKit.ztkMessages.general.success,data:r=null,dataList:t=null,authToken:c=null,errors:R=null,code:g=zaionsToolKit.ResponseCodeEnum.success,status:u=zaionsToolKit.ResponseStatusEnum.success}=s||{};return e.status(u).json({success:o,message:n,result:{data:r,dataList:t,authToken:c},errors:R,code:g,status:u})},P=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.success,data:n=null,dataList:r=null,authToken:t=null,code:c=zaionsToolKit.ResponseCodeEnum.success,status:R=zaionsToolKit.ResponseStatusEnum.success}=s||{};return l(e,{success:!0,message:o,data:n,dataList:r,authToken:t,errors:null,code:c,status:R})},f=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.failed,errors:n=null,code:r=zaionsToolKit.ResponseCodeEnum.failed,status:t=zaionsToolKit.ResponseStatusEnum.failed}=s||{};return l(e,{success:!1,message:o,data:null,errors:n,code:r,status:t})},Q=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.badRequest,errors:n=null,code:r=zaionsToolKit.ResponseCodeEnum.badRequest,status:t=zaionsToolKit.ResponseStatusEnum.badRequest}=s||{};return l(e,{success:!1,message:o,data:null,errors:n,code:r,status:t})},U=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.unAuthenticated,errors:n=null,code:r=zaionsToolKit.ResponseCodeEnum.unAuthenticated,status:t=zaionsToolKit.ResponseStatusEnum.unAuthenticated}=s||{};return l(e,{success:!1,message:o,data:null,errors:n,code:r,status:t})},W=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.unAuthorized,errors:n=null,code:r=zaionsToolKit.ResponseCodeEnum.unAuthorized,status:t=zaionsToolKit.ResponseStatusEnum.unAuthorized}=s||{};return l(e,{success:!1,message:o,data:null,errors:n,code:r,status:t})},Z=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.notFound,errors:n=null,code:r=zaionsToolKit.ResponseCodeEnum.notFound,status:t=zaionsToolKit.ResponseStatusEnum.notFound}=s||{};return l(e,{success:!1,message:o,data:null,errors:n,code:r,status:t})},G=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.tooManyRequests,errors:n=null,code:r=zaionsToolKit.ResponseCodeEnum.tooManyRequests,status:t=zaionsToolKit.ResponseStatusEnum.tooManyRequests}=s||{};return l(e,{success:!1,message:o,data:null,errors:n,code:r,status:t})},J=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.itemExists,errors:n=null,code:r=zaionsToolKit.ResponseCodeEnum.itemExists,status:t=zaionsToolKit.ResponseStatusEnum.itemExists}=s||{};return l(e,{success:!1,message:o,data:null,errors:n,code:r,status:t})};var h=null,k=()=>h,X=e=>{h=w({},e);};var a=k(),y,q,C,b,O=expressRateLimit.rateLimit({windowMs:(y=a==null?void 0:a.windowMs)!=null?y:15*60*1e3,limit:(q=a==null?void 0:a.limit)!=null?q:100,standardHeaders:(C=a==null?void 0:a.standardHeaders)!=null?C:"draft-7",legacyHeaders:(b=a==null?void 0:a.legacyHeaders)!=null?b:!1}),re=(e,{applyCors:s,expressJson:o,expressUrlEncoded:n,applyRateLimiter:r=!0,expressRateLimiter:t})=>{r&&(t?e.use(t):e.use(O)),s&&e.use(F__default.default({origin:"*"})),n&&e.use(express.urlencoded()),o&&e.use(express.json());},ae=e=>{e.use("*",(s,o)=>{f(o,{code:zaionsToolKit.ResponseCodeEnum.invalidRequest,status:zaionsToolKit.ResponseStatusEnum.invalidRequest});});};var j=e=>e.formatWith(s=>[s.msg]).mapped(),v=(e,s)=>{let{includeBody:o=!0,includeCookies:n=!1,includeHeaders:r=!1,includeParams:t=!0,includeQuery:c=!0,includeOptionals:R=!0,onlyValidData:g=!0}=s||{},u=[];return o&&u.push("body"),n&&u.push("cookies"),r&&u.push("headers"),t&&u.push("params"),c&&u.push("query"),expressValidator.matchedData(e,{includeOptionals:R,onlyValidData:g,locations:u})},le=(e,s)=>{let o=expressValidator.validationResult(e);if(o.isEmpty())return v(e);{let n=j(o);return f(s,{errors:n})}};var he=zod.z.object({name:zod.z.string().trim().min(1,{message:"Name is Required."}).max(255),email:zod.z.string().email().max(255),password:zod.z.string().min(6).max(30),passwordConfirmation:zod.z.string().min(6).max(30)}).superRefine((e,s)=>{e.passwordConfirmation!==e.password&&s.addIssue({code:"custom",message:"The passwords did not match",path:["passwordConfirmation"]});}),ke=zod.z.object({email:zod.z.string().email().max(255),password:zod.z.string().min(6).max(30)}); | ||
var I=Object.defineProperty;var x=Object.getOwnPropertySymbols;var M=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable;var E=(e,s,o)=>s in e?I(e,s,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[s]=o,g=(e,s)=>{for(var o in s||(s={}))M.call(s,o)&&E(e,o,s[o]);if(x)for(var o of x(s))O.call(s,o)&&E(e,o,s[o]);return e};var w=(e,s,o)=>new Promise((r,n)=>{var t=u=>{try{p(o.next(u));}catch(f){n(f);}},c=u=>{try{p(o.throw(u));}catch(f){n(f);}},p=u=>u.done?r(u.value):Promise.resolve(u.value).then(t,c);p((o=o.apply(e,s)).next());});var y=null,h=()=>y,k=e=>{y=g({},e);};var G=e=>{let{rateLimiterOptions:s}=e;s&&k(s);};var l=(e,s)=>{let{success:o=!0,message:r=zaionsToolKit.ztkMessages.general.success,data:n=null,dataList:t=null,authToken:c=null,errors:p=null,code:u=zaionsToolKit.ResponseCodeEnum.success,status:f=zaionsToolKit.ResponseStatusEnum.success}=s||{};return e.status(f).json({success:o,message:r,result:{data:n,dataList:t,authToken:c},errors:p,code:u,status:f})},J=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.success,data:r=null,dataList:n=null,authToken:t=null,code:c=zaionsToolKit.ResponseCodeEnum.success,status:p=zaionsToolKit.ResponseStatusEnum.success}=s||{};return l(e,{success:!0,message:o,data:r,dataList:n,authToken:t,errors:null,code:c,status:p})},q=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.failed,errors:r=null,code:n=zaionsToolKit.ResponseCodeEnum.failed,status:t=zaionsToolKit.ResponseStatusEnum.failed}=s||{};return l(e,{success:!1,message:o,data:null,errors:r,code:n,status:t})},C=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.badRequest,errors:r=null,code:n=zaionsToolKit.ResponseCodeEnum.badRequest,status:t=zaionsToolKit.ResponseStatusEnum.badRequest}=s||{};return l(e,{success:!1,message:o,data:null,errors:r,code:n,status:t})},Q=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.unAuthenticated,errors:r=null,code:n=zaionsToolKit.ResponseCodeEnum.unAuthenticated,status:t=zaionsToolKit.ResponseStatusEnum.unAuthenticated}=s||{};return l(e,{success:!1,message:o,data:null,errors:r,code:n,status:t})},W=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.unAuthorized,errors:r=null,code:n=zaionsToolKit.ResponseCodeEnum.unAuthorized,status:t=zaionsToolKit.ResponseStatusEnum.unAuthorized}=s||{};return l(e,{success:!1,message:o,data:null,errors:r,code:n,status:t})},X=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.notFound,errors:r=null,code:n=zaionsToolKit.ResponseCodeEnum.notFound,status:t=zaionsToolKit.ResponseStatusEnum.notFound}=s||{};return l(e,{success:!1,message:o,data:null,errors:r,code:n,status:t})},Y=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.tooManyRequests,errors:r=null,code:n=zaionsToolKit.ResponseCodeEnum.tooManyRequests,status:t=zaionsToolKit.ResponseStatusEnum.tooManyRequests}=s||{};return l(e,{success:!1,message:o,data:null,errors:r,code:n,status:t})},$=(e,s)=>{let{message:o=zaionsToolKit.ztkMessages.general.itemExists,errors:r=null,code:n=zaionsToolKit.ResponseCodeEnum.itemExists,status:t=zaionsToolKit.ResponseStatusEnum.itemExists}=s||{};return l(e,{success:!1,message:o,data:null,errors:r,code:n,status:t})};var a=h(),T,S,b,A,K=expressRateLimit.rateLimit({windowMs:(T=a==null?void 0:a.windowMs)!=null?T:15*60*1e3,limit:(S=a==null?void 0:a.limit)!=null?S:100,standardHeaders:(b=a==null?void 0:a.standardHeaders)!=null?b:"draft-7",legacyHeaders:(A=a==null?void 0:a.legacyHeaders)!=null?A:!1,keyGenerator:e=>{let s=e.headers?e.headers["x-forwarded-for"]:e.socket.remoteAddress;return s?s.toString():""},handler:(e,s)=>s.status(429).json({error:"Too many requests, please try again later."})}),ae=(e,{applyCors:s,expressJson:o,expressUrlEncoded:r,applyRateLimiter:n=!0,expressRateLimiter:t})=>{n&&(t?e.use(t):e.use(K)),s&&e.use(j__default.default({origin:"*"})),r&&e.use(express.urlencoded()),o&&e.use(express.json());},ue=e=>{e.use("*",(s,o)=>{q(o,{code:zaionsToolKit.ResponseCodeEnum.invalidRequest,status:zaionsToolKit.ResponseStatusEnum.invalidRequest});});};var me=e=>e&&typeof e=="object"&&"statusCode"in e&&"statusMessage"in e;function Re(e){return zod.z.number().superRefine((s,o)=>{e.includes(s)||o.addIssue({code:zod.z.ZodIssueCode.invalid_enum_value,options:[...e],received:s});})}var xe=r=>w(void 0,[r],function*({req:e,res:s,validationSchema:o}){var c,p;let n=g({},e.body),t;try{o.parse(n);}catch(u){t=u;}return (c=t==null?void 0:t.formErrors)!=null&&c.fieldErrors?C(s,{errors:(p=t==null?void 0:t.formErrors)==null?void 0:p.fieldErrors}):n});var Ze=zod.z.object({name:zod.z.string().trim().min(1,{message:"Name is Required."}).max(255),email:zod.z.string().email().max(255),password:zod.z.string().min(6).max(30),passwordConfirmation:zod.z.string().min(6).max(30)}).superRefine((e,s)=>{e.passwordConfirmation!==e.password&&s.addIssue({code:"custom",message:"The passwords did not match",path:["passwordConfirmation"]});}),Ie=zod.z.object({email:zod.z.string().email().max(255),password:zod.z.string().min(6).max(30)}); | ||
exports.applyMiddlewaresOnApp = re; | ||
exports.checkValidationResult = le; | ||
exports.getExpressRateLimiterOptions = k; | ||
exports.getFormattedErrors = j; | ||
exports.getValidatedData = v; | ||
exports.invalidRequestHandler = ae; | ||
exports.loginRequestValidationSchema = ke; | ||
exports.registerRequestValidationSchema = he; | ||
exports.sendApiFailedResponse = f; | ||
exports.applyMiddlewaresOnApp = ae; | ||
exports.configureZETK = G; | ||
exports.getExpressRateLimiterOptions = h; | ||
exports.invalidRequestHandler = ue; | ||
exports.isApiResponse = me; | ||
exports.loginRequestValidationSchema = Ie; | ||
exports.numericEnum = Re; | ||
exports.registerRequestValidationSchema = Ze; | ||
exports.sendApiFailedResponse = q; | ||
exports.sendApiResponse = l; | ||
exports.sendApiSuccessResponse = P; | ||
exports.sendBadRequestResponse = Q; | ||
exports.sendItemExistsErrorResponse = J; | ||
exports.sendNotFoundErrorResponse = Z; | ||
exports.sendTooManyRequestsErrorResponse = G; | ||
exports.sendUnAuthenticatedErrorResponse = U; | ||
exports.sendApiSuccessResponse = J; | ||
exports.sendBadRequestResponse = C; | ||
exports.sendItemExistsErrorResponse = $; | ||
exports.sendNotFoundErrorResponse = X; | ||
exports.sendTooManyRequestsErrorResponse = Y; | ||
exports.sendUnAuthenticatedErrorResponse = Q; | ||
exports.sendUnAuthorizedErrorResponse = W; | ||
exports.setExpressRateLimiterOptions = X; | ||
exports.setExpressRateLimiterOptions = k; | ||
exports.validateRequestInputData = xe; | ||
//# sourceMappingURL=index.js.map | ||
//# sourceMappingURL=index.js.map |
187
package.json
{ | ||
"name": "zaions-express-tool-kit", | ||
"version": "0.0.13", | ||
"description": "Zaions Express Tool Kit, this is for expressJs/Typescript projects created by Zaions Dev Team (https://zaions.com), We hope you will love this and all other packages we have developed for you, please do react out if you face any issue in packages we deliver. Once again have fun while working with these packages and let us know your feedback, it keeps us motivated. Have a great day :)", | ||
"main": "./dist/index.js", | ||
"module": "./dist/index.mjs", | ||
"types": "./dist/index.d.ts", | ||
"files": [ | ||
"dist" | ||
], | ||
"scripts": { | ||
"dev": "npm run unlink-packages && tsup --watch", | ||
"build": "npm run unlink-packages && tsup", | ||
"test": "npm run unlink-packages && vitest", | ||
"update:linked-packages": "yarn install --force && yarn link zaions-tool-kit", | ||
"unlink-packages": "yarn link zaions-tool-kit && yarn install --force", | ||
"push:code": "git add . && git commit -m 'logic updated, taking code backup' && git push -u o main", | ||
"deploy": "npm run build && npm publish" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git+ssh://git@github.com/zaions/express-tool-kit.git" | ||
}, | ||
"keywords": [ | ||
"zaions", | ||
"tools", | ||
"kit", | ||
"tool kit", | ||
"util", | ||
"helpers", | ||
"constants", | ||
"functions", | ||
"server", | ||
"client", | ||
"nodejs", | ||
"typescript", | ||
"types", | ||
"tests", | ||
"aoneahsan", | ||
"ahsan mahmood", | ||
"zaions packages", | ||
"express" | ||
], | ||
"author": { | ||
"name": "Zaions", | ||
"email": "admin@zaions.com", | ||
"url": "https://zaions.com/bio" | ||
}, | ||
"license": "ISC", | ||
"bugs": { | ||
"url": "https://github.com/zaions/express-tool-kit/issues" | ||
}, | ||
"homepage": "https://github.com/zaions/express-tool-kit#readme", | ||
"engines": { | ||
"node": ">=20.14.0", | ||
"npm": ">=10.7.0", | ||
"yarn": ">=1.22.19" | ||
}, | ||
"peerDependencies": { | ||
"zaions-tool-kit": "*", | ||
"cors": "^2.8.5", | ||
"express": "^4.19.2", | ||
"express-rate-limit": "^7.4.0", | ||
"express-validator": "^7.1.0", | ||
"zod": "^3.23.8" | ||
}, | ||
"devDependencies": { | ||
"@types/cors": "^2.8.17", | ||
"@types/express": "^4.17.21", | ||
"@types/node": "^22.1.0", | ||
"cors": "^2.8.5", | ||
"express": "^4.19.2", | ||
"express-rate-limit": "^7.4.0", | ||
"express-validator": "^7.1.0", | ||
"ts-node": "^10.9.2", | ||
"tsup": "^8.2.4", | ||
"typescript": "^5.5.4", | ||
"zaions-tool-kit": "*", | ||
"vitest": "^2.0.5", | ||
"zod": "^3.23.8" | ||
}, | ||
"contributors": [ | ||
{ | ||
"name": "Ahsan Mahmood", | ||
"email": "aoneahsan@gmail.com", | ||
"url": "https://aoneahsan.com" | ||
} | ||
], | ||
"displayName": "Zaions - Express Tool Kit", | ||
"engineStrict": true, | ||
"funding": { | ||
"type": "individual", | ||
"url": "https://www.patreon.com/zaions" | ||
}, | ||
"private": false, | ||
"pricing": "Free" | ||
"name": "zaions-express-tool-kit", | ||
"version": "0.0.14", | ||
"description": "Zaions Express Tool Kit, this is for expressJs/Typescript projects created by Zaions Dev Team (https://zaions.com), We hope you will love this and all other packages we have developed for you, please do react out if you face any issue in packages we deliver. Once again have fun while working with these packages and let us know your feedback, it keeps us motivated. Have a great day :)", | ||
"main": "./dist/index.js", | ||
"module": "./dist/index.mjs", | ||
"types": "./dist/index.d.ts", | ||
"files": [ | ||
"dist" | ||
], | ||
"scripts": { | ||
"dev": "npm run update:linked-packages && tsup --watch", | ||
"build": "npm run update:linked-packages && tsup", | ||
"test": "npm run update:linked-packages && vitest", | ||
"update:linked-packages": "yarn install --force && yarn link zaions-tool-kit && tsup", | ||
"push:code": "git add . && git commit -m 'logic updated, taking code backup' && git push -u o main", | ||
"deploy": "npm run build && npm publish" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git+ssh://git@github.com/zaions/express-tool-kit.git" | ||
}, | ||
"keywords": [ | ||
"zaions", | ||
"tools", | ||
"kit", | ||
"tool kit", | ||
"util", | ||
"helpers", | ||
"constants", | ||
"functions", | ||
"server", | ||
"client", | ||
"nodejs", | ||
"typescript", | ||
"types", | ||
"tests", | ||
"aoneahsan", | ||
"ahsan mahmood", | ||
"zaions packages", | ||
"express" | ||
], | ||
"author": { | ||
"name": "Zaions", | ||
"email": "admin@zaions.com", | ||
"url": "https://zaions.com/bio" | ||
}, | ||
"license": "ISC", | ||
"bugs": { | ||
"url": "https://github.com/zaions/express-tool-kit/issues" | ||
}, | ||
"homepage": "https://github.com/zaions/express-tool-kit#readme", | ||
"engines": { | ||
"node": ">=20.14.0", | ||
"npm": ">=10.7.0", | ||
"yarn": ">=1.22.19" | ||
}, | ||
"peerDependencies": { | ||
"cors": "^2.8.5", | ||
"express": "^4.19.2", | ||
"express-rate-limit": "^7.4.0", | ||
"zaions-tool-kit": "*", | ||
"zod": "^3.23.8" | ||
}, | ||
"devDependencies": { | ||
"@types/cors": "^2.8.17", | ||
"@types/express": "^4.17.21", | ||
"@types/node": "^22.5.1", | ||
"cors": "^2.8.5", | ||
"express": "^4.19.2", | ||
"express-rate-limit": "^7.4.0", | ||
"ts-node": "^10.9.2", | ||
"tsup": "^8.2.4", | ||
"typescript": "^5.5.4", | ||
"vitest": "^2.0.5", | ||
"zaions-tool-kit": "*", | ||
"zod": "^3.23.8" | ||
}, | ||
"contributors": [ | ||
{ | ||
"name": "Ahsan Mahmood", | ||
"email": "aoneahsan@gmail.com", | ||
"url": "https://aoneahsan.com" | ||
} | ||
], | ||
"displayName": "Zaions - Express Tool Kit", | ||
"engineStrict": true, | ||
"funding": { | ||
"type": "individual", | ||
"url": "https://www.patreon.com/zaions" | ||
}, | ||
"private": false, | ||
"pricing": "Free" | ||
} |
@@ -0,0 +0,0 @@ # Zaions Express Tool Kit |
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
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
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
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
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
Found 1 instance in 1 package
66274
5
12
214
0