equipped 5.2.9 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +95 -0
- package/README.md +362 -34
- package/dist/cjs/cache/adapters/in-memory/index.cjs +824 -0
- package/dist/cjs/cache/adapters/in-memory/index.cjs.map +1 -0
- package/dist/cjs/cache/adapters/in-memory/index.min.cjs +4 -0
- package/dist/cjs/cache/adapters/in-memory/index.min.cjs.map +1 -0
- package/dist/cjs/cache/adapters/redis/index.cjs +844 -0
- package/dist/cjs/cache/adapters/redis/index.cjs.map +1 -0
- package/dist/cjs/cache/adapters/redis/index.min.cjs +4 -0
- package/dist/cjs/cache/adapters/redis/index.min.cjs.map +1 -0
- package/dist/cjs/cache/index.cjs +602 -4
- package/dist/cjs/cache/index.cjs.map +1 -1
- package/dist/cjs/cache/index.min.cjs +3 -1
- package/dist/cjs/cache/index.min.cjs.map +1 -1
- package/dist/cjs/dbs/adapters/mongodb/index.cjs +1314 -0
- package/dist/cjs/dbs/adapters/mongodb/index.cjs.map +1 -0
- package/dist/cjs/dbs/adapters/mongodb/index.min.cjs +4 -0
- package/dist/cjs/dbs/adapters/mongodb/index.min.cjs.map +1 -0
- package/dist/cjs/dbs/index.cjs +965 -6
- package/dist/cjs/dbs/index.cjs.map +1 -1
- package/dist/cjs/dbs/index.min.cjs +3 -1
- package/dist/cjs/dbs/index.min.cjs.map +1 -1
- package/dist/cjs/errors/index.cjs +127 -8
- package/dist/cjs/errors/index.cjs.map +1 -1
- package/dist/cjs/errors/index.min.cjs +1 -1
- package/dist/cjs/errors/index.min.cjs.map +1 -1
- package/dist/cjs/events/adapters/kafka/index.cjs +845 -0
- package/dist/cjs/events/adapters/kafka/index.cjs.map +1 -0
- package/dist/cjs/events/adapters/kafka/index.min.cjs +4 -0
- package/dist/cjs/events/adapters/kafka/index.min.cjs.map +1 -0
- package/dist/cjs/events/adapters/rabbitmq/index.cjs +836 -0
- package/dist/cjs/events/adapters/rabbitmq/index.cjs.map +1 -0
- package/dist/cjs/events/adapters/rabbitmq/index.min.cjs +4 -0
- package/dist/cjs/events/adapters/rabbitmq/index.min.cjs.map +1 -0
- package/dist/cjs/events/index.cjs +33 -4
- package/dist/cjs/events/index.cjs.map +1 -1
- package/dist/cjs/events/index.min.cjs +1 -1
- package/dist/cjs/events/index.min.cjs.map +1 -1
- package/dist/cjs/index.cjs +588 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.min.cjs +3 -1
- package/dist/cjs/index.min.cjs.map +1 -1
- package/dist/cjs/instance/index.cjs +514 -64
- package/dist/cjs/instance/index.cjs.map +1 -1
- package/dist/cjs/instance/index.min.cjs +3 -3
- package/dist/cjs/instance/index.min.cjs.map +1 -1
- package/dist/cjs/jobs/adapters/redis/index.cjs +979 -0
- package/dist/cjs/jobs/adapters/redis/index.cjs.map +1 -0
- package/dist/cjs/jobs/adapters/redis/index.min.cjs +4 -0
- package/dist/cjs/jobs/adapters/redis/index.min.cjs.map +1 -0
- package/dist/cjs/jobs/index.cjs +55 -2
- package/dist/cjs/jobs/index.cjs.map +1 -1
- package/dist/cjs/jobs/index.min.cjs +1 -1
- package/dist/cjs/jobs/index.min.cjs.map +1 -1
- package/dist/cjs/orm/adapters/in-memory/index.cjs +2551 -0
- package/dist/cjs/orm/adapters/in-memory/index.cjs.map +1 -0
- package/dist/cjs/orm/adapters/in-memory/index.min.cjs +4 -0
- package/dist/cjs/orm/adapters/in-memory/index.min.cjs.map +1 -0
- package/dist/cjs/orm/adapters/json/index.cjs +3518 -0
- package/dist/cjs/orm/adapters/json/index.cjs.map +1 -0
- package/dist/cjs/orm/adapters/json/index.min.cjs +4 -0
- package/dist/cjs/orm/adapters/json/index.min.cjs.map +1 -0
- package/dist/cjs/orm/adapters/mongodb/index.cjs +3299 -0
- package/dist/cjs/orm/adapters/mongodb/index.cjs.map +1 -0
- package/dist/cjs/orm/adapters/mongodb/index.min.cjs +4 -0
- package/dist/cjs/orm/adapters/mongodb/index.min.cjs.map +1 -0
- package/dist/cjs/orm/adapters/postgresql/index.cjs +4114 -0
- package/dist/cjs/orm/adapters/postgresql/index.cjs.map +1 -0
- package/dist/cjs/orm/adapters/postgresql/index.min.cjs +49 -0
- package/dist/cjs/orm/adapters/postgresql/index.min.cjs.map +1 -0
- package/dist/cjs/orm/index.cjs +9216 -0
- package/dist/cjs/orm/index.cjs.map +1 -0
- package/dist/cjs/orm/index.min.cjs +4 -0
- package/dist/cjs/orm/index.min.cjs.map +1 -0
- package/dist/cjs/server/adapters/express/index.cjs +1967 -0
- package/dist/cjs/server/adapters/express/index.cjs.map +1 -0
- package/dist/cjs/server/adapters/express/index.min.cjs +32 -0
- package/dist/cjs/server/adapters/express/index.min.cjs.map +1 -0
- package/dist/cjs/server/adapters/fastify/index.cjs +1974 -0
- package/dist/cjs/server/adapters/fastify/index.cjs.map +1 -0
- package/dist/cjs/server/adapters/fastify/index.min.cjs +32 -0
- package/dist/cjs/server/adapters/fastify/index.min.cjs.map +1 -0
- package/dist/cjs/server/index.cjs +1811 -9
- package/dist/cjs/server/index.cjs.map +1 -1
- package/dist/cjs/server/index.min.cjs +31 -1
- package/dist/cjs/server/index.min.cjs.map +1 -1
- package/dist/cjs/types/index.cjs +18 -1
- package/dist/cjs/types/index.cjs.map +1 -1
- package/dist/cjs/types/index.min.cjs +1 -1
- package/dist/cjs/types/index.min.cjs.map +1 -1
- package/dist/cjs/utilities/index.cjs +862 -7
- package/dist/cjs/utilities/index.cjs.map +1 -1
- package/dist/cjs/utilities/index.min.cjs +3 -1
- package/dist/cjs/utilities/index.min.cjs.map +1 -1
- package/dist/cjs/validations/index.cjs +679 -10
- package/dist/cjs/validations/index.cjs.map +1 -1
- package/dist/cjs/validations/index.min.cjs +3 -1
- package/dist/cjs/validations/index.min.cjs.map +1 -1
- package/dist/esm/cache/adapters/in-memory/index.min.mjs +2 -0
- package/dist/esm/cache/adapters/in-memory/index.min.mjs.map +1 -0
- package/dist/esm/cache/adapters/in-memory/index.mjs +93 -0
- package/dist/esm/cache/adapters/in-memory/index.mjs.map +1 -0
- package/dist/esm/cache/adapters/redis/index.min.mjs +2 -0
- package/dist/esm/cache/adapters/redis/index.mjs +13 -0
- package/dist/esm/cache/index.min.mjs +1 -1
- package/dist/esm/cache/index.min.mjs.map +1 -1
- package/dist/esm/cache/index.mjs +9 -4
- package/dist/esm/cache/index.mjs.map +1 -1
- package/dist/esm/chunk-4JLDXF7T.min.mjs +2 -0
- package/dist/esm/chunk-4JLDXF7T.min.mjs.map +1 -0
- package/dist/{types/events/types/kafka.js → esm/chunk-4MXYZS5R.mjs} +60 -37
- package/dist/esm/chunk-4MXYZS5R.mjs.map +1 -0
- package/dist/esm/chunk-5VW3JAFR.min.mjs +2 -0
- package/dist/esm/chunk-5VW3JAFR.min.mjs.map +1 -0
- package/dist/esm/chunk-AKQBDYUO.mjs +126 -0
- package/dist/esm/chunk-AKQBDYUO.mjs.map +1 -0
- package/dist/esm/chunk-AQY7QVYI.min.mjs +2 -0
- package/dist/esm/chunk-B5QQ32YY.min.mjs +2 -0
- package/dist/esm/chunk-B5QQ32YY.min.mjs.map +1 -0
- package/dist/esm/chunk-BJNIUCPT.min.mjs +2 -0
- package/dist/esm/chunk-BJNIUCPT.min.mjs.map +1 -0
- package/dist/esm/chunk-DKPZJIIR.mjs +29 -0
- package/dist/esm/chunk-DKPZJIIR.mjs.map +1 -0
- package/dist/esm/chunk-DSUJ5FUL.min.mjs +2 -0
- package/dist/esm/chunk-DSUJ5FUL.min.mjs.map +1 -0
- package/dist/esm/chunk-FLAPYQUT.min.mjs +32 -0
- package/dist/esm/chunk-FLAPYQUT.min.mjs.map +1 -0
- package/dist/esm/chunk-J5LGTIGS.mjs +10 -0
- package/dist/esm/chunk-JH6EBXY4.mjs +53 -0
- package/dist/esm/chunk-JH6EBXY4.mjs.map +1 -0
- package/dist/esm/chunk-MDQKODYQ.mjs +2035 -0
- package/dist/esm/chunk-MDQKODYQ.mjs.map +1 -0
- package/dist/esm/chunk-PCAUXBAG.min.mjs +2 -0
- package/dist/esm/chunk-PCAUXBAG.min.mjs.map +1 -0
- package/dist/esm/chunk-PNZNNUMN.mjs +113 -0
- package/dist/esm/chunk-PNZNNUMN.mjs.map +1 -0
- package/dist/esm/chunk-PQCBVQL6.mjs +1280 -0
- package/dist/esm/chunk-PQCBVQL6.mjs.map +1 -0
- package/dist/esm/chunk-QHLKB47N.min.mjs +2 -0
- package/dist/esm/chunk-QHLKB47N.min.mjs.map +1 -0
- package/dist/esm/chunk-SGZNOYC3.min.mjs +2 -0
- package/dist/esm/chunk-SGZNOYC3.min.mjs.map +1 -0
- package/dist/esm/chunk-TVTYDU2D.mjs +795 -0
- package/dist/esm/chunk-TVTYDU2D.mjs.map +1 -0
- package/dist/esm/chunk-VCCS7CAI.mjs +8 -0
- package/dist/esm/chunk-VCCS7CAI.mjs.map +1 -0
- package/dist/esm/chunk-Z2TZ3KR7.mjs +22 -0
- package/dist/esm/chunk-Z2TZ3KR7.mjs.map +1 -0
- package/dist/esm/chunk-ZGMFFK6Y.min.mjs +2 -0
- package/dist/esm/chunk-ZGMFFK6Y.min.mjs.map +1 -0
- package/dist/esm/dbs/adapters/mongodb/index.min.mjs +2 -0
- package/dist/esm/dbs/adapters/mongodb/index.min.mjs.map +1 -0
- package/dist/esm/dbs/adapters/mongodb/index.mjs +419 -0
- package/dist/esm/dbs/adapters/mongodb/index.mjs.map +1 -0
- package/dist/esm/dbs/index.min.mjs +1 -1
- package/dist/esm/dbs/index.min.mjs.map +1 -1
- package/dist/esm/dbs/index.mjs +22 -6
- package/dist/esm/dbs/index.mjs.map +1 -1
- package/dist/esm/errors/index.min.mjs +1 -1
- package/dist/esm/errors/index.min.mjs.map +1 -1
- package/dist/esm/errors/index.mjs +22 -8
- package/dist/esm/errors/index.mjs.map +1 -1
- package/dist/esm/events/adapters/kafka/index.min.mjs +2 -0
- package/dist/esm/events/adapters/kafka/index.min.mjs.map +1 -0
- package/dist/esm/events/adapters/kafka/index.mjs +12 -0
- package/dist/esm/events/adapters/kafka/index.mjs.map +1 -0
- package/dist/esm/events/adapters/rabbitmq/index.min.mjs +2 -0
- package/dist/esm/events/adapters/rabbitmq/index.min.mjs.map +1 -0
- package/dist/esm/events/adapters/rabbitmq/index.mjs +92 -0
- package/dist/esm/events/adapters/rabbitmq/index.mjs.map +1 -0
- package/dist/esm/events/index.min.mjs +1 -1
- package/dist/esm/events/index.min.mjs.map +1 -1
- package/dist/esm/events/index.mjs +7 -4
- package/dist/esm/events/index.mjs.map +1 -1
- package/dist/esm/index.min.mjs +1 -1
- package/dist/esm/index.min.mjs.map +1 -1
- package/dist/esm/index.mjs +8 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/instance/index.min.mjs +1 -3
- package/dist/esm/instance/index.min.mjs.map +1 -1
- package/dist/esm/instance/index.mjs +4 -132
- package/dist/esm/instance/index.mjs.map +1 -1
- package/dist/esm/introspection-32BRYKYY.mjs +10 -0
- package/dist/esm/introspection-32BRYKYY.mjs.map +1 -0
- package/dist/esm/introspection-A72WMWE3.min.mjs +2 -0
- package/dist/esm/introspection-A72WMWE3.min.mjs.map +1 -0
- package/dist/esm/jobs/adapters/redis/index.min.mjs +2 -0
- package/dist/esm/jobs/adapters/redis/index.min.mjs.map +1 -0
- package/dist/esm/jobs/{types/redis.mjs → adapters/redis/index.mjs} +71 -56
- package/dist/esm/jobs/adapters/redis/index.mjs.map +1 -0
- package/dist/esm/jobs/index.min.mjs +1 -1
- package/dist/esm/jobs/index.min.mjs.map +1 -1
- package/dist/esm/jobs/index.mjs +9 -2
- package/dist/esm/jobs/index.mjs.map +1 -1
- package/dist/esm/orm/adapters/in-memory/index.min.mjs +2 -0
- package/dist/esm/orm/adapters/in-memory/index.min.mjs.map +1 -0
- package/dist/esm/orm/adapters/in-memory/index.mjs +11 -0
- package/dist/esm/orm/adapters/in-memory/index.mjs.map +1 -0
- package/dist/esm/orm/adapters/json/index.min.mjs +2 -0
- package/dist/esm/orm/adapters/json/index.min.mjs.map +1 -0
- package/dist/esm/orm/adapters/json/index.mjs +980 -0
- package/dist/esm/orm/adapters/json/index.mjs.map +1 -0
- package/dist/esm/orm/adapters/mongodb/index.min.mjs +2 -0
- package/dist/esm/orm/adapters/mongodb/index.min.mjs.map +1 -0
- package/dist/esm/orm/adapters/mongodb/index.mjs +1539 -0
- package/dist/esm/orm/adapters/mongodb/index.mjs.map +1 -0
- package/dist/esm/orm/adapters/postgresql/index.min.mjs +47 -0
- package/dist/esm/orm/adapters/postgresql/index.min.mjs.map +1 -0
- package/dist/esm/orm/adapters/postgresql/index.mjs +2070 -0
- package/dist/esm/orm/adapters/postgresql/index.mjs.map +1 -0
- package/dist/esm/orm/index.min.mjs +2 -0
- package/dist/esm/orm/index.min.mjs.map +1 -0
- package/dist/esm/orm/index.mjs +7326 -0
- package/dist/esm/orm/index.mjs.map +1 -0
- package/dist/esm/server/adapters/express/index.min.mjs +2 -0
- package/dist/esm/server/adapters/express/index.min.mjs.map +1 -0
- package/dist/esm/server/adapters/express/index.mjs +177 -0
- package/dist/esm/server/adapters/express/index.mjs.map +1 -0
- package/dist/esm/server/adapters/fastify/index.min.mjs +2 -0
- package/dist/esm/server/adapters/fastify/index.min.mjs.map +1 -0
- package/dist/esm/server/adapters/fastify/index.mjs +185 -0
- package/dist/esm/server/adapters/fastify/index.mjs.map +1 -0
- package/dist/esm/server/index.min.mjs +1 -1
- package/dist/esm/server/index.min.mjs.map +1 -1
- package/dist/esm/server/index.mjs +38 -9
- package/dist/esm/server/index.mjs.map +1 -1
- package/dist/esm/types/index.min.mjs +0 -1
- package/dist/esm/types/index.min.mjs.map +1 -1
- package/dist/esm/types/index.mjs +0 -1
- package/dist/esm/types/index.mjs.map +1 -1
- package/dist/esm/utilities/index.min.mjs +1 -1
- package/dist/esm/utilities/index.min.mjs.map +1 -1
- package/dist/esm/utilities/index.mjs +22 -9
- package/dist/esm/utilities/index.mjs.map +1 -1
- package/dist/esm/validations/index.min.mjs +1 -1
- package/dist/esm/validations/index.min.mjs.map +1 -1
- package/dist/esm/validations/index.mjs +8 -18
- package/dist/esm/validations/index.mjs.map +1 -1
- package/dist/types/adapter-Coap9ISX.d.ts +1435 -0
- package/dist/types/{fastify-DLPUK3vD.d.ts → base-DVr0fHil.d.ts} +76 -143
- package/dist/types/cache/adapters/in-memory/index.d.ts +21 -0
- package/dist/types/cache/adapters/in-memory/index.js +92 -0
- package/dist/types/cache/adapters/redis/index.d.ts +73 -0
- package/dist/types/cache/adapters/redis/index.js +12 -0
- package/dist/types/cache/index.d.ts +2 -42
- package/dist/types/cache/index.js +9 -4
- package/dist/types/chunk-3M4PBZAQ.js +125 -0
- package/dist/types/chunk-3TKJGSCZ.js +21 -0
- package/dist/types/chunk-65EHKCDZ.js +112 -0
- package/dist/types/chunk-JQ2FWX4W.js +1279 -0
- package/dist/types/chunk-KZKFYO4V.js +7 -0
- package/dist/types/chunk-LN3A6R4Y.js +28 -0
- package/dist/types/chunk-MLKGABMK.js +9 -0
- package/dist/types/chunk-NJ2FHI3U.js +794 -0
- package/dist/types/chunk-OHFTQGQG.js +52 -0
- package/dist/{esm/events/types/kafka.mjs → types/chunk-XGGGAEET.js} +59 -38
- package/dist/types/chunk-YTY3EFNB.js +2034 -0
- package/dist/types/{core-BrkNSwvc.d.ts → core-tNlIMH9Y.d.ts} +48 -38
- package/dist/types/dbs/adapters/mongodb/index.d.ts +43 -0
- package/dist/types/dbs/adapters/mongodb/index.js +418 -0
- package/dist/types/dbs/index.d.ts +14 -12
- package/dist/types/dbs/index.js +22 -6
- package/dist/types/equippedError-Cmo60Kn-.d.ts +8 -0
- package/dist/types/errors/index.d.ts +3 -3
- package/dist/types/errors/index.js +22 -8
- package/dist/types/events/adapters/kafka/index.d.ts +83 -0
- package/dist/types/events/adapters/kafka/index.js +11 -0
- package/dist/types/events/adapters/rabbitmq/index.d.ts +41 -0
- package/dist/types/events/adapters/rabbitmq/index.js +91 -0
- package/dist/types/events/index.d.ts +11 -11
- package/dist/types/events/index.js +7 -4
- package/dist/types/index.d.ts +2 -25
- package/dist/types/index.js +8 -1
- package/dist/types/instance/index.d.ts +12 -179
- package/dist/types/instance/index.js +4 -132
- package/dist/types/introspection-VOIU3XE6.js +9 -0
- package/dist/types/jobs/adapters/redis/index.d.ts +93 -0
- package/dist/types/jobs/{types/redis.js → adapters/redis/index.js} +70 -55
- package/dist/types/jobs/index.d.ts +19 -35
- package/dist/types/jobs/index.js +9 -2
- package/dist/types/orm/adapters/in-memory/index.d.ts +92 -0
- package/dist/types/orm/adapters/in-memory/index.js +10 -0
- package/dist/types/orm/adapters/json/index.d.ts +72 -0
- package/dist/types/orm/adapters/json/index.js +979 -0
- package/dist/types/orm/adapters/mongodb/index.d.ts +74 -0
- package/dist/types/orm/adapters/mongodb/index.js +1538 -0
- package/dist/types/orm/adapters/postgresql/index.d.ts +112 -0
- package/dist/types/orm/adapters/postgresql/index.js +2069 -0
- package/dist/types/orm/index.d.ts +160 -0
- package/dist/types/orm/index.js +7325 -0
- package/dist/types/{requestError-C2PNWUrt.d.ts → requestError-DdaL8hc3.d.ts} +2 -8
- package/dist/types/server/adapters/express/index.d.ts +196 -0
- package/dist/types/server/adapters/express/index.js +176 -0
- package/dist/types/server/adapters/fastify/index.d.ts +221 -0
- package/dist/types/server/adapters/fastify/index.js +184 -0
- package/dist/types/server/index.d.ts +10 -11
- package/dist/types/server/index.js +38 -9
- package/dist/types/types/index.js +0 -1
- package/dist/types/utilities/index.d.ts +22 -9
- package/dist/types/utilities/index.js +22 -9
- package/dist/types/{validationError-Bw8OYv5s.d.ts → validationError-oigtHqBi.d.ts} +1 -1
- package/dist/types/validations/index.d.ts +3 -2
- package/dist/types/validations/index.js +8 -18
- package/package.json +155 -18
- package/dist/cjs/audit/events.cjs +0 -101
- package/dist/cjs/audit/events.cjs.map +0 -1
- package/dist/cjs/audit/events.min.cjs +0 -2
- package/dist/cjs/audit/events.min.cjs.map +0 -1
- package/dist/cjs/audit/index.cjs +0 -2
- package/dist/cjs/audit/index.cjs.map +0 -1
- package/dist/cjs/audit/index.min.cjs +0 -2
- package/dist/cjs/audit/index.min.cjs.map +0 -1
- package/dist/cjs/cache/base.cjs +0 -6
- package/dist/cjs/cache/base.cjs.map +0 -1
- package/dist/cjs/cache/base.min.cjs +0 -2
- package/dist/cjs/cache/base.min.cjs.map +0 -1
- package/dist/cjs/cache/pipes.cjs +0 -16
- package/dist/cjs/cache/pipes.cjs.map +0 -1
- package/dist/cjs/cache/pipes.min.cjs +0 -2
- package/dist/cjs/cache/pipes.min.cjs.map +0 -1
- package/dist/cjs/cache/types/in-memory.cjs +0 -47
- package/dist/cjs/cache/types/in-memory.cjs.map +0 -1
- package/dist/cjs/cache/types/in-memory.min.cjs +0 -2
- package/dist/cjs/cache/types/in-memory.min.cjs.map +0 -1
- package/dist/cjs/cache/types/redis.cjs +0 -55
- package/dist/cjs/cache/types/redis.cjs.map +0 -1
- package/dist/cjs/cache/types/redis.min.cjs +0 -2
- package/dist/cjs/cache/types/redis.min.cjs.map +0 -1
- package/dist/cjs/dbs/base/changes.cjs +0 -36
- package/dist/cjs/dbs/base/changes.cjs.map +0 -1
- package/dist/cjs/dbs/base/changes.min.cjs +0 -2
- package/dist/cjs/dbs/base/changes.min.cjs.map +0 -1
- package/dist/cjs/dbs/base/core.cjs +0 -1
- package/dist/cjs/dbs/base/core.cjs.map +0 -1
- package/dist/cjs/dbs/base/core.min.cjs +0 -1
- package/dist/cjs/dbs/base/core.min.cjs.map +0 -1
- package/dist/cjs/dbs/base/db.cjs +0 -14
- package/dist/cjs/dbs/base/db.cjs.map +0 -1
- package/dist/cjs/dbs/base/db.min.cjs +0 -2
- package/dist/cjs/dbs/base/db.min.cjs.map +0 -1
- package/dist/cjs/dbs/base/types.cjs +0 -2
- package/dist/cjs/dbs/base/types.cjs.map +0 -1
- package/dist/cjs/dbs/base/types.min.cjs +0 -2
- package/dist/cjs/dbs/base/types.min.cjs.map +0 -1
- package/dist/cjs/dbs/mongo/changes.cjs +0 -81
- package/dist/cjs/dbs/mongo/changes.cjs.map +0 -1
- package/dist/cjs/dbs/mongo/changes.min.cjs +0 -2
- package/dist/cjs/dbs/mongo/changes.min.cjs.map +0 -1
- package/dist/cjs/dbs/mongo/db.cjs +0 -225
- package/dist/cjs/dbs/mongo/db.cjs.map +0 -1
- package/dist/cjs/dbs/mongo/db.min.cjs +0 -2
- package/dist/cjs/dbs/mongo/db.min.cjs.map +0 -1
- package/dist/cjs/dbs/mongo/query.cjs +0 -66
- package/dist/cjs/dbs/mongo/query.cjs.map +0 -1
- package/dist/cjs/dbs/mongo/query.min.cjs +0 -2
- package/dist/cjs/dbs/mongo/query.min.cjs.map +0 -1
- package/dist/cjs/dbs/pipes.cjs +0 -104
- package/dist/cjs/dbs/pipes.cjs.map +0 -1
- package/dist/cjs/dbs/pipes.min.cjs +0 -2
- package/dist/cjs/dbs/pipes.min.cjs.map +0 -1
- package/dist/cjs/errors/equippedError.cjs +0 -12
- package/dist/cjs/errors/equippedError.cjs.map +0 -1
- package/dist/cjs/errors/equippedError.min.cjs +0 -2
- package/dist/cjs/errors/equippedError.min.cjs.map +0 -1
- package/dist/cjs/errors/requestError.cjs +0 -12
- package/dist/cjs/errors/requestError.cjs.map +0 -1
- package/dist/cjs/errors/requestError.min.cjs +0 -2
- package/dist/cjs/errors/requestError.min.cjs.map +0 -1
- package/dist/cjs/errors/types/badRequestError.cjs +0 -12
- package/dist/cjs/errors/types/badRequestError.cjs.map +0 -1
- package/dist/cjs/errors/types/badRequestError.min.cjs +0 -2
- package/dist/cjs/errors/types/badRequestError.min.cjs.map +0 -1
- package/dist/cjs/errors/types/notAuthenticatedError.cjs +0 -12
- package/dist/cjs/errors/types/notAuthenticatedError.cjs.map +0 -1
- package/dist/cjs/errors/types/notAuthenticatedError.min.cjs +0 -2
- package/dist/cjs/errors/types/notAuthenticatedError.min.cjs.map +0 -1
- package/dist/cjs/errors/types/notAuthorizedError.cjs +0 -12
- package/dist/cjs/errors/types/notAuthorizedError.cjs.map +0 -1
- package/dist/cjs/errors/types/notAuthorizedError.min.cjs +0 -2
- package/dist/cjs/errors/types/notAuthorizedError.min.cjs.map +0 -1
- package/dist/cjs/errors/types/notFoundError.cjs +0 -12
- package/dist/cjs/errors/types/notFoundError.cjs.map +0 -1
- package/dist/cjs/errors/types/notFoundError.min.cjs +0 -2
- package/dist/cjs/errors/types/notFoundError.min.cjs.map +0 -1
- package/dist/cjs/errors/types/tokenExpired.cjs +0 -12
- package/dist/cjs/errors/types/tokenExpired.cjs.map +0 -1
- package/dist/cjs/errors/types/tokenExpired.min.cjs +0 -2
- package/dist/cjs/errors/types/tokenExpired.min.cjs.map +0 -1
- package/dist/cjs/errors/types/validationError.cjs +0 -16
- package/dist/cjs/errors/types/validationError.cjs.map +0 -1
- package/dist/cjs/errors/types/validationError.min.cjs +0 -2
- package/dist/cjs/errors/types/validationError.min.cjs.map +0 -1
- package/dist/cjs/events/base.cjs +0 -6
- package/dist/cjs/events/base.cjs.map +0 -1
- package/dist/cjs/events/base.min.cjs +0 -2
- package/dist/cjs/events/base.min.cjs.map +0 -1
- package/dist/cjs/events/pipes.cjs +0 -28
- package/dist/cjs/events/pipes.cjs.map +0 -1
- package/dist/cjs/events/pipes.min.cjs +0 -2
- package/dist/cjs/events/pipes.min.cjs.map +0 -1
- package/dist/cjs/events/types/kafka.cjs +0 -80
- package/dist/cjs/events/types/kafka.cjs.map +0 -1
- package/dist/cjs/events/types/kafka.min.cjs +0 -2
- package/dist/cjs/events/types/kafka.min.cjs.map +0 -1
- package/dist/cjs/events/types/rabbitmq.cjs +0 -54
- package/dist/cjs/events/types/rabbitmq.cjs.map +0 -1
- package/dist/cjs/events/types/rabbitmq.min.cjs +0 -2
- package/dist/cjs/events/types/rabbitmq.min.cjs.map +0 -1
- package/dist/cjs/instance/hooks.cjs +0 -26
- package/dist/cjs/instance/hooks.cjs.map +0 -1
- package/dist/cjs/instance/hooks.min.cjs +0 -2
- package/dist/cjs/instance/hooks.min.cjs.map +0 -1
- package/dist/cjs/instance/settings.cjs +0 -57
- package/dist/cjs/instance/settings.cjs.map +0 -1
- package/dist/cjs/instance/settings.min.cjs +0 -2
- package/dist/cjs/instance/settings.min.cjs.map +0 -1
- package/dist/cjs/jobs/pipes.cjs +0 -13
- package/dist/cjs/jobs/pipes.cjs.map +0 -1
- package/dist/cjs/jobs/pipes.min.cjs +0 -2
- package/dist/cjs/jobs/pipes.min.cjs.map +0 -1
- package/dist/cjs/jobs/types/redis.cjs +0 -106
- package/dist/cjs/jobs/types/redis.cjs.map +0 -1
- package/dist/cjs/jobs/types/redis.min.cjs +0 -2
- package/dist/cjs/jobs/types/redis.min.cjs.map +0 -1
- package/dist/cjs/server/impls/base.cjs +0 -211
- package/dist/cjs/server/impls/base.cjs.map +0 -1
- package/dist/cjs/server/impls/base.min.cjs +0 -2
- package/dist/cjs/server/impls/base.min.cjs.map +0 -1
- package/dist/cjs/server/impls/express.cjs +0 -111
- package/dist/cjs/server/impls/express.cjs.map +0 -1
- package/dist/cjs/server/impls/express.min.cjs +0 -2
- package/dist/cjs/server/impls/express.min.cjs.map +0 -1
- package/dist/cjs/server/impls/fastify.cjs +0 -121
- package/dist/cjs/server/impls/fastify.cjs.map +0 -1
- package/dist/cjs/server/impls/fastify.min.cjs +0 -2
- package/dist/cjs/server/impls/fastify.min.cjs.map +0 -1
- package/dist/cjs/server/middlewares/index.cjs +0 -2
- package/dist/cjs/server/middlewares/index.cjs.map +0 -1
- package/dist/cjs/server/middlewares/index.min.cjs +0 -2
- package/dist/cjs/server/middlewares/index.min.cjs.map +0 -1
- package/dist/cjs/server/middlewares/requireAuthUser.cjs +0 -22
- package/dist/cjs/server/middlewares/requireAuthUser.cjs.map +0 -1
- package/dist/cjs/server/middlewares/requireAuthUser.min.cjs +0 -2
- package/dist/cjs/server/middlewares/requireAuthUser.min.cjs.map +0 -1
- package/dist/cjs/server/openapi.cjs +0 -191
- package/dist/cjs/server/openapi.cjs.map +0 -1
- package/dist/cjs/server/openapi.min.cjs +0 -30
- package/dist/cjs/server/openapi.min.cjs.map +0 -1
- package/dist/cjs/server/pipes.cjs +0 -67
- package/dist/cjs/server/pipes.cjs.map +0 -1
- package/dist/cjs/server/pipes.min.cjs +0 -2
- package/dist/cjs/server/pipes.min.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/apiKeys.cjs +0 -21
- package/dist/cjs/server/requests-auth-methods/apiKeys.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/apiKeys.min.cjs +0 -2
- package/dist/cjs/server/requests-auth-methods/apiKeys.min.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/base.cjs +0 -20
- package/dist/cjs/server/requests-auth-methods/base.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/base.min.cjs +0 -2
- package/dist/cjs/server/requests-auth-methods/base.min.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/index.cjs +0 -4
- package/dist/cjs/server/requests-auth-methods/index.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/index.min.cjs +0 -2
- package/dist/cjs/server/requests-auth-methods/index.min.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/jwt.cjs +0 -78
- package/dist/cjs/server/requests-auth-methods/jwt.cjs.map +0 -1
- package/dist/cjs/server/requests-auth-methods/jwt.min.cjs +0 -2
- package/dist/cjs/server/requests-auth-methods/jwt.min.cjs.map +0 -1
- package/dist/cjs/server/requests.cjs +0 -80
- package/dist/cjs/server/requests.cjs.map +0 -1
- package/dist/cjs/server/requests.min.cjs +0 -2
- package/dist/cjs/server/requests.min.cjs.map +0 -1
- package/dist/cjs/server/routes.cjs +0 -74
- package/dist/cjs/server/routes.cjs.map +0 -1
- package/dist/cjs/server/routes.min.cjs +0 -2
- package/dist/cjs/server/routes.min.cjs.map +0 -1
- package/dist/cjs/server/sockets.cjs +0 -126
- package/dist/cjs/server/sockets.cjs.map +0 -1
- package/dist/cjs/server/sockets.min.cjs +0 -2
- package/dist/cjs/server/sockets.min.cjs.map +0 -1
- package/dist/cjs/server/types.cjs +0 -34
- package/dist/cjs/server/types.cjs.map +0 -1
- package/dist/cjs/server/types.min.cjs +0 -2
- package/dist/cjs/server/types.min.cjs.map +0 -1
- package/dist/cjs/types/overrides.cjs +0 -1
- package/dist/cjs/types/overrides.cjs.map +0 -1
- package/dist/cjs/types/overrides.min.cjs +0 -1
- package/dist/cjs/types/overrides.min.cjs.map +0 -1
- package/dist/cjs/utilities/authProviders.cjs +0 -53
- package/dist/cjs/utilities/authProviders.cjs.map +0 -1
- package/dist/cjs/utilities/authProviders.min.cjs +0 -2
- package/dist/cjs/utilities/authProviders.min.cjs.map +0 -1
- package/dist/cjs/utilities/hash.cjs +0 -17
- package/dist/cjs/utilities/hash.cjs.map +0 -1
- package/dist/cjs/utilities/hash.min.cjs +0 -2
- package/dist/cjs/utilities/hash.min.cjs.map +0 -1
- package/dist/cjs/utilities/json.cjs +0 -16
- package/dist/cjs/utilities/json.cjs.map +0 -1
- package/dist/cjs/utilities/json.min.cjs +0 -2
- package/dist/cjs/utilities/json.min.cjs.map +0 -1
- package/dist/cjs/utilities/media.cjs +0 -13
- package/dist/cjs/utilities/media.cjs.map +0 -1
- package/dist/cjs/utilities/media.min.cjs +0 -2
- package/dist/cjs/utilities/media.min.cjs.map +0 -1
- package/dist/cjs/utilities/random.cjs +0 -12
- package/dist/cjs/utilities/random.cjs.map +0 -1
- package/dist/cjs/utilities/random.min.cjs +0 -2
- package/dist/cjs/utilities/random.min.cjs.map +0 -1
- package/dist/cjs/utilities/retry.cjs +0 -14
- package/dist/cjs/utilities/retry.cjs.map +0 -1
- package/dist/cjs/utilities/retry.min.cjs +0 -2
- package/dist/cjs/utilities/retry.min.cjs.map +0 -1
- package/dist/cjs/validations/valleyed.cjs +0 -43
- package/dist/cjs/validations/valleyed.cjs.map +0 -1
- package/dist/cjs/validations/valleyed.min.cjs +0 -2
- package/dist/cjs/validations/valleyed.min.cjs.map +0 -1
- package/dist/esm/audit/events.min.mjs +0 -2
- package/dist/esm/audit/events.min.mjs.map +0 -1
- package/dist/esm/audit/events.mjs +0 -101
- package/dist/esm/audit/events.mjs.map +0 -1
- package/dist/esm/audit/index.min.mjs +0 -2
- package/dist/esm/audit/index.min.mjs.map +0 -1
- package/dist/esm/audit/index.mjs +0 -2
- package/dist/esm/audit/index.mjs.map +0 -1
- package/dist/esm/cache/base.min.mjs +0 -2
- package/dist/esm/cache/base.min.mjs.map +0 -1
- package/dist/esm/cache/base.mjs +0 -6
- package/dist/esm/cache/base.mjs.map +0 -1
- package/dist/esm/cache/pipes.min.mjs +0 -2
- package/dist/esm/cache/pipes.min.mjs.map +0 -1
- package/dist/esm/cache/pipes.mjs +0 -16
- package/dist/esm/cache/pipes.mjs.map +0 -1
- package/dist/esm/cache/types/in-memory.min.mjs +0 -2
- package/dist/esm/cache/types/in-memory.min.mjs.map +0 -1
- package/dist/esm/cache/types/in-memory.mjs +0 -47
- package/dist/esm/cache/types/in-memory.mjs.map +0 -1
- package/dist/esm/cache/types/redis.min.mjs +0 -2
- package/dist/esm/cache/types/redis.min.mjs.map +0 -1
- package/dist/esm/cache/types/redis.mjs +0 -55
- package/dist/esm/cache/types/redis.mjs.map +0 -1
- package/dist/esm/dbs/base/changes.min.mjs +0 -2
- package/dist/esm/dbs/base/changes.min.mjs.map +0 -1
- package/dist/esm/dbs/base/changes.mjs +0 -36
- package/dist/esm/dbs/base/changes.mjs.map +0 -1
- package/dist/esm/dbs/base/core.min.mjs +0 -1
- package/dist/esm/dbs/base/core.mjs +0 -1
- package/dist/esm/dbs/base/db.min.mjs +0 -2
- package/dist/esm/dbs/base/db.min.mjs.map +0 -1
- package/dist/esm/dbs/base/db.mjs +0 -14
- package/dist/esm/dbs/base/db.mjs.map +0 -1
- package/dist/esm/dbs/base/types.min.mjs +0 -2
- package/dist/esm/dbs/base/types.min.mjs.map +0 -1
- package/dist/esm/dbs/base/types.mjs +0 -2
- package/dist/esm/dbs/base/types.mjs.map +0 -1
- package/dist/esm/dbs/mongo/changes.min.mjs +0 -2
- package/dist/esm/dbs/mongo/changes.min.mjs.map +0 -1
- package/dist/esm/dbs/mongo/changes.mjs +0 -81
- package/dist/esm/dbs/mongo/changes.mjs.map +0 -1
- package/dist/esm/dbs/mongo/db.min.mjs +0 -2
- package/dist/esm/dbs/mongo/db.min.mjs.map +0 -1
- package/dist/esm/dbs/mongo/db.mjs +0 -225
- package/dist/esm/dbs/mongo/db.mjs.map +0 -1
- package/dist/esm/dbs/mongo/query.min.mjs +0 -2
- package/dist/esm/dbs/mongo/query.min.mjs.map +0 -1
- package/dist/esm/dbs/mongo/query.mjs +0 -66
- package/dist/esm/dbs/mongo/query.mjs.map +0 -1
- package/dist/esm/dbs/pipes.min.mjs +0 -2
- package/dist/esm/dbs/pipes.min.mjs.map +0 -1
- package/dist/esm/dbs/pipes.mjs +0 -104
- package/dist/esm/dbs/pipes.mjs.map +0 -1
- package/dist/esm/errors/equippedError.min.mjs +0 -2
- package/dist/esm/errors/equippedError.min.mjs.map +0 -1
- package/dist/esm/errors/equippedError.mjs +0 -12
- package/dist/esm/errors/equippedError.mjs.map +0 -1
- package/dist/esm/errors/requestError.min.mjs +0 -2
- package/dist/esm/errors/requestError.min.mjs.map +0 -1
- package/dist/esm/errors/requestError.mjs +0 -12
- package/dist/esm/errors/requestError.mjs.map +0 -1
- package/dist/esm/errors/types/badRequestError.min.mjs +0 -2
- package/dist/esm/errors/types/badRequestError.min.mjs.map +0 -1
- package/dist/esm/errors/types/badRequestError.mjs +0 -12
- package/dist/esm/errors/types/badRequestError.mjs.map +0 -1
- package/dist/esm/errors/types/notAuthenticatedError.min.mjs +0 -2
- package/dist/esm/errors/types/notAuthenticatedError.min.mjs.map +0 -1
- package/dist/esm/errors/types/notAuthenticatedError.mjs +0 -12
- package/dist/esm/errors/types/notAuthenticatedError.mjs.map +0 -1
- package/dist/esm/errors/types/notAuthorizedError.min.mjs +0 -2
- package/dist/esm/errors/types/notAuthorizedError.min.mjs.map +0 -1
- package/dist/esm/errors/types/notAuthorizedError.mjs +0 -12
- package/dist/esm/errors/types/notAuthorizedError.mjs.map +0 -1
- package/dist/esm/errors/types/notFoundError.min.mjs +0 -2
- package/dist/esm/errors/types/notFoundError.min.mjs.map +0 -1
- package/dist/esm/errors/types/notFoundError.mjs +0 -12
- package/dist/esm/errors/types/notFoundError.mjs.map +0 -1
- package/dist/esm/errors/types/tokenExpired.min.mjs +0 -2
- package/dist/esm/errors/types/tokenExpired.min.mjs.map +0 -1
- package/dist/esm/errors/types/tokenExpired.mjs +0 -12
- package/dist/esm/errors/types/tokenExpired.mjs.map +0 -1
- package/dist/esm/errors/types/validationError.min.mjs +0 -2
- package/dist/esm/errors/types/validationError.min.mjs.map +0 -1
- package/dist/esm/errors/types/validationError.mjs +0 -16
- package/dist/esm/errors/types/validationError.mjs.map +0 -1
- package/dist/esm/events/base.min.mjs +0 -2
- package/dist/esm/events/base.min.mjs.map +0 -1
- package/dist/esm/events/base.mjs +0 -6
- package/dist/esm/events/base.mjs.map +0 -1
- package/dist/esm/events/pipes.min.mjs +0 -2
- package/dist/esm/events/pipes.min.mjs.map +0 -1
- package/dist/esm/events/pipes.mjs +0 -28
- package/dist/esm/events/pipes.mjs.map +0 -1
- package/dist/esm/events/types/kafka.min.mjs +0 -2
- package/dist/esm/events/types/kafka.min.mjs.map +0 -1
- package/dist/esm/events/types/kafka.mjs.map +0 -1
- package/dist/esm/events/types/rabbitmq.min.mjs +0 -2
- package/dist/esm/events/types/rabbitmq.min.mjs.map +0 -1
- package/dist/esm/events/types/rabbitmq.mjs +0 -54
- package/dist/esm/events/types/rabbitmq.mjs.map +0 -1
- package/dist/esm/instance/hooks.min.mjs +0 -2
- package/dist/esm/instance/hooks.min.mjs.map +0 -1
- package/dist/esm/instance/hooks.mjs +0 -26
- package/dist/esm/instance/hooks.mjs.map +0 -1
- package/dist/esm/instance/settings.min.mjs +0 -2
- package/dist/esm/instance/settings.min.mjs.map +0 -1
- package/dist/esm/instance/settings.mjs +0 -57
- package/dist/esm/instance/settings.mjs.map +0 -1
- package/dist/esm/jobs/pipes.min.mjs +0 -2
- package/dist/esm/jobs/pipes.min.mjs.map +0 -1
- package/dist/esm/jobs/pipes.mjs +0 -13
- package/dist/esm/jobs/pipes.mjs.map +0 -1
- package/dist/esm/jobs/types/redis.min.mjs +0 -2
- package/dist/esm/jobs/types/redis.min.mjs.map +0 -1
- package/dist/esm/jobs/types/redis.mjs.map +0 -1
- package/dist/esm/server/impls/base.min.mjs +0 -2
- package/dist/esm/server/impls/base.min.mjs.map +0 -1
- package/dist/esm/server/impls/base.mjs +0 -211
- package/dist/esm/server/impls/base.mjs.map +0 -1
- package/dist/esm/server/impls/express.min.mjs +0 -2
- package/dist/esm/server/impls/express.min.mjs.map +0 -1
- package/dist/esm/server/impls/express.mjs +0 -111
- package/dist/esm/server/impls/express.mjs.map +0 -1
- package/dist/esm/server/impls/fastify.min.mjs +0 -2
- package/dist/esm/server/impls/fastify.min.mjs.map +0 -1
- package/dist/esm/server/impls/fastify.mjs +0 -121
- package/dist/esm/server/impls/fastify.mjs.map +0 -1
- package/dist/esm/server/middlewares/index.min.mjs +0 -2
- package/dist/esm/server/middlewares/index.min.mjs.map +0 -1
- package/dist/esm/server/middlewares/index.mjs +0 -2
- package/dist/esm/server/middlewares/index.mjs.map +0 -1
- package/dist/esm/server/middlewares/requireAuthUser.min.mjs +0 -2
- package/dist/esm/server/middlewares/requireAuthUser.min.mjs.map +0 -1
- package/dist/esm/server/middlewares/requireAuthUser.mjs +0 -22
- package/dist/esm/server/middlewares/requireAuthUser.mjs.map +0 -1
- package/dist/esm/server/openapi.min.mjs +0 -30
- package/dist/esm/server/openapi.min.mjs.map +0 -1
- package/dist/esm/server/openapi.mjs +0 -191
- package/dist/esm/server/openapi.mjs.map +0 -1
- package/dist/esm/server/pipes.min.mjs +0 -2
- package/dist/esm/server/pipes.min.mjs.map +0 -1
- package/dist/esm/server/pipes.mjs +0 -67
- package/dist/esm/server/pipes.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/apiKeys.min.mjs +0 -2
- package/dist/esm/server/requests-auth-methods/apiKeys.min.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/apiKeys.mjs +0 -21
- package/dist/esm/server/requests-auth-methods/apiKeys.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/base.min.mjs +0 -2
- package/dist/esm/server/requests-auth-methods/base.min.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/base.mjs +0 -20
- package/dist/esm/server/requests-auth-methods/base.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/index.min.mjs +0 -2
- package/dist/esm/server/requests-auth-methods/index.min.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/index.mjs +0 -4
- package/dist/esm/server/requests-auth-methods/index.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/jwt.min.mjs +0 -2
- package/dist/esm/server/requests-auth-methods/jwt.min.mjs.map +0 -1
- package/dist/esm/server/requests-auth-methods/jwt.mjs +0 -78
- package/dist/esm/server/requests-auth-methods/jwt.mjs.map +0 -1
- package/dist/esm/server/requests.min.mjs +0 -2
- package/dist/esm/server/requests.min.mjs.map +0 -1
- package/dist/esm/server/requests.mjs +0 -80
- package/dist/esm/server/requests.mjs.map +0 -1
- package/dist/esm/server/routes.min.mjs +0 -2
- package/dist/esm/server/routes.min.mjs.map +0 -1
- package/dist/esm/server/routes.mjs +0 -74
- package/dist/esm/server/routes.mjs.map +0 -1
- package/dist/esm/server/sockets.min.mjs +0 -2
- package/dist/esm/server/sockets.min.mjs.map +0 -1
- package/dist/esm/server/sockets.mjs +0 -126
- package/dist/esm/server/sockets.mjs.map +0 -1
- package/dist/esm/server/types.min.mjs +0 -2
- package/dist/esm/server/types.min.mjs.map +0 -1
- package/dist/esm/server/types.mjs +0 -34
- package/dist/esm/server/types.mjs.map +0 -1
- package/dist/esm/types/overrides.min.mjs +0 -1
- package/dist/esm/types/overrides.mjs +0 -1
- package/dist/esm/utilities/authProviders.min.mjs +0 -2
- package/dist/esm/utilities/authProviders.min.mjs.map +0 -1
- package/dist/esm/utilities/authProviders.mjs +0 -53
- package/dist/esm/utilities/authProviders.mjs.map +0 -1
- package/dist/esm/utilities/hash.min.mjs +0 -2
- package/dist/esm/utilities/hash.min.mjs.map +0 -1
- package/dist/esm/utilities/hash.mjs +0 -17
- package/dist/esm/utilities/hash.mjs.map +0 -1
- package/dist/esm/utilities/json.min.mjs +0 -2
- package/dist/esm/utilities/json.min.mjs.map +0 -1
- package/dist/esm/utilities/json.mjs +0 -16
- package/dist/esm/utilities/json.mjs.map +0 -1
- package/dist/esm/utilities/media.min.mjs +0 -2
- package/dist/esm/utilities/media.min.mjs.map +0 -1
- package/dist/esm/utilities/media.mjs +0 -13
- package/dist/esm/utilities/media.mjs.map +0 -1
- package/dist/esm/utilities/random.min.mjs +0 -2
- package/dist/esm/utilities/random.min.mjs.map +0 -1
- package/dist/esm/utilities/random.mjs +0 -12
- package/dist/esm/utilities/random.mjs.map +0 -1
- package/dist/esm/utilities/retry.min.mjs +0 -2
- package/dist/esm/utilities/retry.min.mjs.map +0 -1
- package/dist/esm/utilities/retry.mjs +0 -14
- package/dist/esm/utilities/retry.mjs.map +0 -1
- package/dist/esm/validations/valleyed.min.mjs +0 -2
- package/dist/esm/validations/valleyed.min.mjs.map +0 -1
- package/dist/esm/validations/valleyed.mjs +0 -43
- package/dist/esm/validations/valleyed.mjs.map +0 -1
- package/dist/types/audit/events.js +0 -100
- package/dist/types/audit/index.d.ts +0 -44
- package/dist/types/audit/index.js +0 -1
- package/dist/types/cache/base.js +0 -5
- package/dist/types/cache/pipes.js +0 -15
- package/dist/types/cache/types/in-memory.js +0 -46
- package/dist/types/cache/types/redis.js +0 -54
- package/dist/types/db-C8YY1yTO.d.ts +0 -14
- package/dist/types/db-Dj1SGto0.d.ts +0 -24
- package/dist/types/dbs/base/changes.js +0 -35
- package/dist/types/dbs/base/core.js +0 -0
- package/dist/types/dbs/base/db.js +0 -13
- package/dist/types/dbs/base/types.js +0 -1
- package/dist/types/dbs/mongo/changes.js +0 -80
- package/dist/types/dbs/mongo/db.js +0 -224
- package/dist/types/dbs/mongo/query.js +0 -65
- package/dist/types/dbs/pipes.js +0 -103
- package/dist/types/errors/equippedError.js +0 -11
- package/dist/types/errors/requestError.js +0 -11
- package/dist/types/errors/types/badRequestError.js +0 -11
- package/dist/types/errors/types/notAuthenticatedError.js +0 -11
- package/dist/types/errors/types/notAuthorizedError.js +0 -11
- package/dist/types/errors/types/notFoundError.js +0 -11
- package/dist/types/errors/types/tokenExpired.js +0 -11
- package/dist/types/errors/types/validationError.js +0 -15
- package/dist/types/events/base.js +0 -5
- package/dist/types/events/pipes.js +0 -27
- package/dist/types/events/types/rabbitmq.js +0 -53
- package/dist/types/instance/hooks.js +0 -25
- package/dist/types/instance/settings.js +0 -56
- package/dist/types/jobs/pipes.js +0 -12
- package/dist/types/kafka-Cf-TUJgv.d.ts +0 -54
- package/dist/types/server/impls/base.js +0 -210
- package/dist/types/server/impls/express.js +0 -110
- package/dist/types/server/impls/fastify.js +0 -120
- package/dist/types/server/middlewares/index.js +0 -1
- package/dist/types/server/middlewares/requireAuthUser.js +0 -21
- package/dist/types/server/openapi.js +0 -190
- package/dist/types/server/pipes.js +0 -66
- package/dist/types/server/requests-auth-methods/apiKeys.js +0 -20
- package/dist/types/server/requests-auth-methods/base.js +0 -19
- package/dist/types/server/requests-auth-methods/index.js +0 -3
- package/dist/types/server/requests-auth-methods/jwt.js +0 -77
- package/dist/types/server/requests.js +0 -79
- package/dist/types/server/routes.js +0 -73
- package/dist/types/server/sockets.js +0 -125
- package/dist/types/server/types.js +0 -33
- package/dist/types/types/overrides.js +0 -0
- package/dist/types/utilities/authProviders.js +0 -52
- package/dist/types/utilities/hash.js +0 -16
- package/dist/types/utilities/json.js +0 -15
- package/dist/types/utilities/media.js +0 -12
- package/dist/types/utilities/random.js +0 -11
- package/dist/types/utilities/retry.js +0 -13
- package/dist/types/validations/valleyed.js +0 -42
- /package/dist/esm/{dbs/base/core.min.mjs.map → cache/adapters/redis/index.min.mjs.map} +0 -0
- /package/dist/esm/{dbs/base/core.mjs.map → cache/adapters/redis/index.mjs.map} +0 -0
- /package/dist/esm/{types/overrides.min.mjs.map → chunk-AQY7QVYI.min.mjs.map} +0 -0
- /package/dist/esm/{types/overrides.mjs.map → chunk-J5LGTIGS.mjs.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{B as m,C as y,K as p,g as c,m as d,q as u,u as l}from "../../../chunk-FLAPYQUT.min.mjs";import"../../../chunk-DSUJ5FUL.min.mjs";import"../../../chunk-AQY7QVYI.min.mjs";import R from"http";import x from"cookie-parser";import b from"cors";import i from"express";import f from"express-fileupload";import{rateLimit as q}from"express-rate-limit";import v from"helmet";import{pinoHttp as w}from"pino-http";var h=class extends d(m,y){#e;#s;constructor(s){super(s);let e=i(),r=p.get(),t=R.createServer(e);this.#e=e,this.#s=t,this.setup(t,s),e.disable("x-powered-by"),s.requests.log&&e.use(w({logger:r.log})),e.use(i.json()),e.use(i.text()),e.use(x()),e.use(v({crossOriginResourcePolicy:{policy:"cross-origin"},contentSecurityPolicy:!1})),e.use(b(this.cors)),e.use(i.urlencoded({extended:!1})),s.publicPath&&e.use(i.static(s.publicPath)),e.use(f({limits:{fileSize:r.settings.utils.maxFileUploadSizeInMb*1024*1024},useTempFiles:!1})),s.requests.rateLimit.enabled&&e.use(q({windowMs:s.requests.rateLimit.periodInMs,limit:s.requests.rateLimit.limit,handler:(n,o)=>o.status(c.TooManyRequests).json([{message:"Too Many Requests"}])}))}async parseRequest(s){let e=Object.fromEntries(await Promise.all(Object.entries(s.files??{}).map(async([r,t])=>{let n=Array.isArray(t)?t:[t],o=await Promise.all(n.map(async a=>({name:a.name,type:a.mimetype,size:a.size,isTruncated:a.truncated,data:a.data,duration:await u(a.data)})));return[r,o]})));return new l({ip:s.ip,body:s.body??{},cookies:s.cookies??{},params:s.params??{},query:s.query??{},method:s.method,path:s.path,headers:s.headers,files:e})}async handleResponse(s,e){if(e.piped)e.body.pipe(s);else{Object.entries(e.headers).forEach(([t,n])=>s.header(t,n)),Object.entries(e.cookies).forEach(([t,{value:n,...o}])=>s.cookie(t,n,o));let r=e.body===null||e.body===void 0?"json":"send";s.status(e.status)[r](e.body).end()}}createRawResponder(s,e){return this.createNodeRawResponder({request:s,response:e})}registerRoute(s,e,r){this.#e[s]?.(e,async(t,n)=>r(t,n))}registerErrorHandler(s){this.#e.use(async(e,r,t,n)=>s(e,r,t))}registerNotFoundHandler(s){this.#e.use(async(e,r,t)=>s(e,r))}startServer(s){return new Promise((e,r)=>{try{let t=this.#s.listen({host:"0.0.0.0",port:s},async()=>e(!0));p.on("close",t.close)}catch(t){r(t)}})}};export{h as ExpressServer};
|
|
2
|
+
//# sourceMappingURL=index.min.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/server/adapters/express/index.ts"],"sourcesContent":["import http from 'http'\n\nimport cookie from 'cookie-parser'\nimport cors from 'cors'\nimport express from 'express'\nimport fileUpload from 'express-fileupload'\nimport { rateLimit } from 'express-rate-limit'\n// import slowDown from 'express-slow-down'\nimport helmet from 'helmet'\nimport { pinoHttp } from 'pino-http'\n\nimport { Instance } from '../../../instance'\nimport { configurable, getMediaDuration } from '../../../utilities'\nimport { Request, Response } from '../../requests'\nimport { StatusCodes, type IncomingFile, type MethodsEnum } from '../../types'\nimport { type RawResponder, Server, serverConfigPipe } from '../base'\n\nexport class ExpressServer extends configurable(serverConfigPipe, Server) {\n\t#app: express.Express\n\t#httpServer: http.Server\n\n\tprotected constructor(config: typeof ExpressServer.Config) {\n\t\tsuper(config)\n\t\tconst app = express()\n\t\tconst instance = Instance.get()\n\t\tconst httpServer = http.createServer(app)\n\t\tthis.#app = app\n\t\tthis.#httpServer = httpServer\n\n\t\tthis.setup(httpServer, config)\n\n\t\tapp.disable('x-powered-by')\n\t\tif (config.requests.log) app.use(pinoHttp({ logger: instance.log }))\n\t\tapp.use(express.json())\n\t\tapp.use(express.text())\n\t\tapp.use(cookie())\n\t\tapp.use(\n\t\t\thelmet({\n\t\t\t\tcrossOriginResourcePolicy: { policy: 'cross-origin' },\n\t\t\t\tcontentSecurityPolicy: false,\n\t\t\t}),\n\t\t)\n\t\tapp.use(cors(this.cors))\n\t\tapp.use(express.urlencoded({ extended: false }))\n\t\tif (config.publicPath) app.use(express.static(config.publicPath))\n\t\tapp.use(\n\t\t\tfileUpload({\n\t\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\t\tuseTempFiles: false,\n\t\t\t}),\n\t\t)\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.use(\n\t\t\t\trateLimit({\n\t\t\t\t\twindowMs: config.requests.rateLimit.periodInMs,\n\t\t\t\t\tlimit: config.requests.rateLimit.limit,\n\t\t\t\t\thandler: (_: express.Request, res: express.Response) =>\n\t\t\t\t\t\tres.status(StatusCodes.TooManyRequests).json([{ message: 'Too Many Requests' }]),\n\t\t\t\t}),\n\t\t\t)\n\t\t/* if (this.settings.slowdown.enabled) app.use(slowDown({\n\t\t\t\twindowMs: this.settings.slowdown.periodInMs,\n\t\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\t\tdelayMs: this.settings.slowdown.delayInMs\n\t\t\t})) */\n\t}\n\n\tprotected async parseRequest(req: any) {\n\t\tconst files = Object.fromEntries(\n\t\t\tawait Promise.all(\n\t\t\t\tObject.entries(req.files ?? {}).map(async ([key, file]) => {\n\t\t\t\t\tconst uploads = Array.isArray(file) ? file : [file]\n\t\t\t\t\tconst fileArray: IncomingFile[] = await Promise.all(\n\t\t\t\t\t\tuploads.map(async (f: any) => ({\n\t\t\t\t\t\t\tname: f.name,\n\t\t\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\t\t\tsize: f.size,\n\t\t\t\t\t\t\tisTruncated: f.truncated,\n\t\t\t\t\t\t\tdata: f.data,\n\t\t\t\t\t\t\tduration: await getMediaDuration(f.data),\n\t\t\t\t\t\t})),\n\t\t\t\t\t)\n\t\t\t\t\treturn <const>[key, fileArray]\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\n\t\treturn new Request<any>({\n\t\t\tip: req.ip,\n\t\t\tbody: req.body ?? {},\n\t\t\tcookies: req.cookies ?? {},\n\t\t\tparams: req.params ?? {},\n\t\t\tquery: req.query ?? {},\n\t\t\tmethod: <any>req.method,\n\t\t\tpath: req.path,\n\t\t\theaders: req.headers,\n\t\t\tfiles,\n\t\t})\n\t}\n\n\tprotected async handleResponse(res: any, response: Response<any>) {\n\t\tif (!response.piped) {\n\t\t\tObject.entries(response.headers).forEach(([key, value]) => res.header(key, value as string))\n\t\t\tObject.entries(response.cookies).forEach(([key, { value, ...opts }]) => res.cookie(key, value, opts))\n\t\t\tconst type = response.body === null || response.body === undefined ? 'json' : 'send'\n\t\t\tres.status(response.status)[type](response.body).end()\n\t\t} else {\n\t\t\tresponse.body.pipe(res)\n\t\t}\n\t}\n\n\tprotected createRawResponder(req: express.Request, res: express.Response): RawResponder {\n\t\treturn this.createNodeRawResponder({ request: req, response: res })\n\t}\n\n\tprotected registerRoute(method: MethodsEnum, path: string, cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app[method]?.(path, async (req: any, res: any) => cb(req, res))\n\t}\n\n\tprotected registerErrorHandler(cb: (error: Error, req: any, res: any) => Promise<void>) {\n\t\tthis.#app.use(async (err: any, req: any, res: any, _next: any) => cb(err, req, res))\n\t}\n\n\tprotected registerNotFoundHandler(cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app.use(async (req: any, res: any, _next: any) => cb(req, res))\n\t}\n\n\tprotected startServer(port: number) {\n\t\treturn new Promise<boolean>((resolve: (s: boolean) => void, reject: (e: Error) => void) => {\n\t\t\ttry {\n\t\t\t\tconst server = this.#httpServer.listen({ host: '0.0.0.0', port }, async () => resolve(true))\n\t\t\t\tInstance.on('close', server.close)\n\t\t\t} catch (err) {\n\t\t\t\treject(<Error>err)\n\t\t\t}\n\t\t})\n\t}\n}\n\nif (import.meta.vitest) {\n\tconst { describe, expect, test, vi } = import.meta.vitest\n\n\tconst testInstanceState = globalThis as typeof globalThis & { __equippedTestInstanceAliased?: boolean }\n\n\tfunction ensureTestInstance() {\n\t\tconst instance = Instance.maybeGet() ?? Instance.create({ app: { name: 'equipped-test' }, log: { level: 'silent' } })\n\t\tif (!testInstanceState.__equippedTestInstanceAliased) {\n\t\t\tinstance.alias('equipped-test')\n\t\t\ttestInstanceState.__equippedTestInstanceAliased = true\n\t\t}\n\t}\n\n\tfunction createExpressResponse() {\n\t\treturn {\n\t\t\tstatusCode: 200,\n\t\t\theadersSent: false,\n\t\t\twritableEnded: false,\n\t\t\tsetHeader: vi.fn(),\n\t\t\tend(chunk?: unknown) {\n\t\t\t\tvoid chunk\n\t\t\t\tthis.headersSent = true\n\t\t\t\tthis.writableEnded = true\n\t\t\t},\n\t\t}\n\t}\n\n\tclass TestExpressServer extends ExpressServer {\n\t\texposeRawResponder(req: express.Request, res: express.Response) {\n\t\t\treturn this.createRawResponder(req, res)\n\t\t}\n\t}\n\n\tdescribe('ExpressServer raw responder', () => {\n\t\ttest('passes the Express request and response to the raw Node handler', async () => {\n\t\t\tensureTestInstance()\n\t\t\tconst server = TestExpressServer.create({ port: 0, requests: { log: false } })\n\t\t\tconst req = { marker: 'request' } as unknown as express.Request\n\t\t\tconst res = createExpressResponse() as unknown as express.Response\n\t\t\tlet received: { request: unknown; response: unknown } | null = null\n\n\t\t\tawait server.exposeRawResponder(\n\t\t\t\treq,\n\t\t\t\tres,\n\t\t\t)(async (request, response) => {\n\t\t\t\treceived = { request, response }\n\t\t\t\tresponse.end('ok')\n\t\t\t})\n\n\t\t\texpect(received).toEqual({ request: req, response: res })\n\t\t})\n\t})\n}\n"],"mappings":"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","names":["http","cookie","cors","express","fileUpload","rateLimit","helmet","pinoHttp","ExpressServer","configurable","serverConfigPipe","Server","#app","#httpServer","config","app","express","instance","Instance","httpServer","http","pinoHttp","cookie","helmet","cors","fileUpload","rateLimit","_","res","StatusCodes","req","files","key","file","uploads","fileArray","f","getMediaDuration","Request","response","value","opts","type","method","path","cb","err","_next","port","resolve","reject","server"]}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Instance,
|
|
3
|
+
Request,
|
|
4
|
+
Server,
|
|
5
|
+
StatusCodes,
|
|
6
|
+
configurable,
|
|
7
|
+
getMediaDuration,
|
|
8
|
+
serverConfigPipe
|
|
9
|
+
} from "../../../chunk-MDQKODYQ.mjs";
|
|
10
|
+
import "../../../chunk-VCCS7CAI.mjs";
|
|
11
|
+
import "../../../chunk-J5LGTIGS.mjs";
|
|
12
|
+
|
|
13
|
+
// src/server/adapters/express/index.ts
|
|
14
|
+
import http from "http";
|
|
15
|
+
import cookie from "cookie-parser";
|
|
16
|
+
import cors from "cors";
|
|
17
|
+
import express from "express";
|
|
18
|
+
import fileUpload from "express-fileupload";
|
|
19
|
+
import { rateLimit } from "express-rate-limit";
|
|
20
|
+
import helmet from "helmet";
|
|
21
|
+
import { pinoHttp } from "pino-http";
|
|
22
|
+
var ExpressServer = class extends configurable(serverConfigPipe, Server) {
|
|
23
|
+
#app;
|
|
24
|
+
#httpServer;
|
|
25
|
+
constructor(config) {
|
|
26
|
+
super(config);
|
|
27
|
+
const app = express();
|
|
28
|
+
const instance = Instance.get();
|
|
29
|
+
const httpServer = http.createServer(app);
|
|
30
|
+
this.#app = app;
|
|
31
|
+
this.#httpServer = httpServer;
|
|
32
|
+
this.setup(httpServer, config);
|
|
33
|
+
app.disable("x-powered-by");
|
|
34
|
+
if (config.requests.log) app.use(pinoHttp({ logger: instance.log }));
|
|
35
|
+
app.use(express.json());
|
|
36
|
+
app.use(express.text());
|
|
37
|
+
app.use(cookie());
|
|
38
|
+
app.use(
|
|
39
|
+
helmet({
|
|
40
|
+
crossOriginResourcePolicy: { policy: "cross-origin" },
|
|
41
|
+
contentSecurityPolicy: false
|
|
42
|
+
})
|
|
43
|
+
);
|
|
44
|
+
app.use(cors(this.cors));
|
|
45
|
+
app.use(express.urlencoded({ extended: false }));
|
|
46
|
+
if (config.publicPath) app.use(express.static(config.publicPath));
|
|
47
|
+
app.use(
|
|
48
|
+
fileUpload({
|
|
49
|
+
limits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },
|
|
50
|
+
useTempFiles: false
|
|
51
|
+
})
|
|
52
|
+
);
|
|
53
|
+
if (config.requests.rateLimit.enabled)
|
|
54
|
+
app.use(
|
|
55
|
+
rateLimit({
|
|
56
|
+
windowMs: config.requests.rateLimit.periodInMs,
|
|
57
|
+
limit: config.requests.rateLimit.limit,
|
|
58
|
+
handler: (_, res) => res.status(StatusCodes.TooManyRequests).json([{ message: "Too Many Requests" }])
|
|
59
|
+
})
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
async parseRequest(req) {
|
|
63
|
+
const files = Object.fromEntries(
|
|
64
|
+
await Promise.all(
|
|
65
|
+
Object.entries(req.files ?? {}).map(async ([key, file]) => {
|
|
66
|
+
const uploads = Array.isArray(file) ? file : [file];
|
|
67
|
+
const fileArray = await Promise.all(
|
|
68
|
+
uploads.map(async (f) => ({
|
|
69
|
+
name: f.name,
|
|
70
|
+
type: f.mimetype,
|
|
71
|
+
size: f.size,
|
|
72
|
+
isTruncated: f.truncated,
|
|
73
|
+
data: f.data,
|
|
74
|
+
duration: await getMediaDuration(f.data)
|
|
75
|
+
}))
|
|
76
|
+
);
|
|
77
|
+
return [key, fileArray];
|
|
78
|
+
})
|
|
79
|
+
)
|
|
80
|
+
);
|
|
81
|
+
return new Request({
|
|
82
|
+
ip: req.ip,
|
|
83
|
+
body: req.body ?? {},
|
|
84
|
+
cookies: req.cookies ?? {},
|
|
85
|
+
params: req.params ?? {},
|
|
86
|
+
query: req.query ?? {},
|
|
87
|
+
method: req.method,
|
|
88
|
+
path: req.path,
|
|
89
|
+
headers: req.headers,
|
|
90
|
+
files
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
async handleResponse(res, response) {
|
|
94
|
+
if (!response.piped) {
|
|
95
|
+
Object.entries(response.headers).forEach(([key, value]) => res.header(key, value));
|
|
96
|
+
Object.entries(response.cookies).forEach(([key, { value, ...opts }]) => res.cookie(key, value, opts));
|
|
97
|
+
const type = response.body === null || response.body === void 0 ? "json" : "send";
|
|
98
|
+
res.status(response.status)[type](response.body).end();
|
|
99
|
+
} else {
|
|
100
|
+
response.body.pipe(res);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
createRawResponder(req, res) {
|
|
104
|
+
return this.createNodeRawResponder({ request: req, response: res });
|
|
105
|
+
}
|
|
106
|
+
registerRoute(method, path, cb) {
|
|
107
|
+
this.#app[method]?.(path, async (req, res) => cb(req, res));
|
|
108
|
+
}
|
|
109
|
+
registerErrorHandler(cb) {
|
|
110
|
+
this.#app.use(async (err, req, res, _next) => cb(err, req, res));
|
|
111
|
+
}
|
|
112
|
+
registerNotFoundHandler(cb) {
|
|
113
|
+
this.#app.use(async (req, res, _next) => cb(req, res));
|
|
114
|
+
}
|
|
115
|
+
startServer(port) {
|
|
116
|
+
return new Promise((resolve, reject) => {
|
|
117
|
+
try {
|
|
118
|
+
const server = this.#httpServer.listen({ host: "0.0.0.0", port }, async () => resolve(true));
|
|
119
|
+
Instance.on("close", server.close);
|
|
120
|
+
} catch (err) {
|
|
121
|
+
reject(err);
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
if (void 0) {
|
|
127
|
+
let ensureTestInstance = function() {
|
|
128
|
+
const instance = Instance.maybeGet() ?? Instance.create({ app: { name: "equipped-test" }, log: { level: "silent" } });
|
|
129
|
+
if (!testInstanceState.__equippedTestInstanceAliased) {
|
|
130
|
+
instance.alias("equipped-test");
|
|
131
|
+
testInstanceState.__equippedTestInstanceAliased = true;
|
|
132
|
+
}
|
|
133
|
+
}, createExpressResponse = function() {
|
|
134
|
+
return {
|
|
135
|
+
statusCode: 200,
|
|
136
|
+
headersSent: false,
|
|
137
|
+
writableEnded: false,
|
|
138
|
+
setHeader: vi.fn(),
|
|
139
|
+
end(chunk) {
|
|
140
|
+
void chunk;
|
|
141
|
+
this.headersSent = true;
|
|
142
|
+
this.writableEnded = true;
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
};
|
|
146
|
+
ensureTestInstance2 = ensureTestInstance, createExpressResponse2 = createExpressResponse;
|
|
147
|
+
const { describe, expect, test, vi } = void 0;
|
|
148
|
+
const testInstanceState = globalThis;
|
|
149
|
+
class TestExpressServer extends ExpressServer {
|
|
150
|
+
exposeRawResponder(req, res) {
|
|
151
|
+
return this.createRawResponder(req, res);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
describe("ExpressServer raw responder", () => {
|
|
155
|
+
test("passes the Express request and response to the raw Node handler", async () => {
|
|
156
|
+
ensureTestInstance();
|
|
157
|
+
const server = TestExpressServer.create({ port: 0, requests: { log: false } });
|
|
158
|
+
const req = { marker: "request" };
|
|
159
|
+
const res = createExpressResponse();
|
|
160
|
+
let received = null;
|
|
161
|
+
await server.exposeRawResponder(
|
|
162
|
+
req,
|
|
163
|
+
res
|
|
164
|
+
)(async (request, response) => {
|
|
165
|
+
received = { request, response };
|
|
166
|
+
response.end("ok");
|
|
167
|
+
});
|
|
168
|
+
expect(received).toEqual({ request: req, response: res });
|
|
169
|
+
});
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
var ensureTestInstance2;
|
|
173
|
+
var createExpressResponse2;
|
|
174
|
+
export {
|
|
175
|
+
ExpressServer
|
|
176
|
+
};
|
|
177
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/server/adapters/express/index.ts"],"sourcesContent":["import http from 'http'\n\nimport cookie from 'cookie-parser'\nimport cors from 'cors'\nimport express from 'express'\nimport fileUpload from 'express-fileupload'\nimport { rateLimit } from 'express-rate-limit'\n// import slowDown from 'express-slow-down'\nimport helmet from 'helmet'\nimport { pinoHttp } from 'pino-http'\n\nimport { Instance } from '../../../instance'\nimport { configurable, getMediaDuration } from '../../../utilities'\nimport { Request, Response } from '../../requests'\nimport { StatusCodes, type IncomingFile, type MethodsEnum } from '../../types'\nimport { type RawResponder, Server, serverConfigPipe } from '../base'\n\nexport class ExpressServer extends configurable(serverConfigPipe, Server) {\n\t#app: express.Express\n\t#httpServer: http.Server\n\n\tprotected constructor(config: typeof ExpressServer.Config) {\n\t\tsuper(config)\n\t\tconst app = express()\n\t\tconst instance = Instance.get()\n\t\tconst httpServer = http.createServer(app)\n\t\tthis.#app = app\n\t\tthis.#httpServer = httpServer\n\n\t\tthis.setup(httpServer, config)\n\n\t\tapp.disable('x-powered-by')\n\t\tif (config.requests.log) app.use(pinoHttp({ logger: instance.log }))\n\t\tapp.use(express.json())\n\t\tapp.use(express.text())\n\t\tapp.use(cookie())\n\t\tapp.use(\n\t\t\thelmet({\n\t\t\t\tcrossOriginResourcePolicy: { policy: 'cross-origin' },\n\t\t\t\tcontentSecurityPolicy: false,\n\t\t\t}),\n\t\t)\n\t\tapp.use(cors(this.cors))\n\t\tapp.use(express.urlencoded({ extended: false }))\n\t\tif (config.publicPath) app.use(express.static(config.publicPath))\n\t\tapp.use(\n\t\t\tfileUpload({\n\t\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\t\tuseTempFiles: false,\n\t\t\t}),\n\t\t)\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.use(\n\t\t\t\trateLimit({\n\t\t\t\t\twindowMs: config.requests.rateLimit.periodInMs,\n\t\t\t\t\tlimit: config.requests.rateLimit.limit,\n\t\t\t\t\thandler: (_: express.Request, res: express.Response) =>\n\t\t\t\t\t\tres.status(StatusCodes.TooManyRequests).json([{ message: 'Too Many Requests' }]),\n\t\t\t\t}),\n\t\t\t)\n\t\t/* if (this.settings.slowdown.enabled) app.use(slowDown({\n\t\t\t\twindowMs: this.settings.slowdown.periodInMs,\n\t\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\t\tdelayMs: this.settings.slowdown.delayInMs\n\t\t\t})) */\n\t}\n\n\tprotected async parseRequest(req: any) {\n\t\tconst files = Object.fromEntries(\n\t\t\tawait Promise.all(\n\t\t\t\tObject.entries(req.files ?? {}).map(async ([key, file]) => {\n\t\t\t\t\tconst uploads = Array.isArray(file) ? file : [file]\n\t\t\t\t\tconst fileArray: IncomingFile[] = await Promise.all(\n\t\t\t\t\t\tuploads.map(async (f: any) => ({\n\t\t\t\t\t\t\tname: f.name,\n\t\t\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\t\t\tsize: f.size,\n\t\t\t\t\t\t\tisTruncated: f.truncated,\n\t\t\t\t\t\t\tdata: f.data,\n\t\t\t\t\t\t\tduration: await getMediaDuration(f.data),\n\t\t\t\t\t\t})),\n\t\t\t\t\t)\n\t\t\t\t\treturn <const>[key, fileArray]\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\n\t\treturn new Request<any>({\n\t\t\tip: req.ip,\n\t\t\tbody: req.body ?? {},\n\t\t\tcookies: req.cookies ?? {},\n\t\t\tparams: req.params ?? {},\n\t\t\tquery: req.query ?? {},\n\t\t\tmethod: <any>req.method,\n\t\t\tpath: req.path,\n\t\t\theaders: req.headers,\n\t\t\tfiles,\n\t\t})\n\t}\n\n\tprotected async handleResponse(res: any, response: Response<any>) {\n\t\tif (!response.piped) {\n\t\t\tObject.entries(response.headers).forEach(([key, value]) => res.header(key, value as string))\n\t\t\tObject.entries(response.cookies).forEach(([key, { value, ...opts }]) => res.cookie(key, value, opts))\n\t\t\tconst type = response.body === null || response.body === undefined ? 'json' : 'send'\n\t\t\tres.status(response.status)[type](response.body).end()\n\t\t} else {\n\t\t\tresponse.body.pipe(res)\n\t\t}\n\t}\n\n\tprotected createRawResponder(req: express.Request, res: express.Response): RawResponder {\n\t\treturn this.createNodeRawResponder({ request: req, response: res })\n\t}\n\n\tprotected registerRoute(method: MethodsEnum, path: string, cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app[method]?.(path, async (req: any, res: any) => cb(req, res))\n\t}\n\n\tprotected registerErrorHandler(cb: (error: Error, req: any, res: any) => Promise<void>) {\n\t\tthis.#app.use(async (err: any, req: any, res: any, _next: any) => cb(err, req, res))\n\t}\n\n\tprotected registerNotFoundHandler(cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app.use(async (req: any, res: any, _next: any) => cb(req, res))\n\t}\n\n\tprotected startServer(port: number) {\n\t\treturn new Promise<boolean>((resolve: (s: boolean) => void, reject: (e: Error) => void) => {\n\t\t\ttry {\n\t\t\t\tconst server = this.#httpServer.listen({ host: '0.0.0.0', port }, async () => resolve(true))\n\t\t\t\tInstance.on('close', server.close)\n\t\t\t} catch (err) {\n\t\t\t\treject(<Error>err)\n\t\t\t}\n\t\t})\n\t}\n}\n\nif (import.meta.vitest) {\n\tconst { describe, expect, test, vi } = import.meta.vitest\n\n\tconst testInstanceState = globalThis as typeof globalThis & { __equippedTestInstanceAliased?: boolean }\n\n\tfunction ensureTestInstance() {\n\t\tconst instance = Instance.maybeGet() ?? Instance.create({ app: { name: 'equipped-test' }, log: { level: 'silent' } })\n\t\tif (!testInstanceState.__equippedTestInstanceAliased) {\n\t\t\tinstance.alias('equipped-test')\n\t\t\ttestInstanceState.__equippedTestInstanceAliased = true\n\t\t}\n\t}\n\n\tfunction createExpressResponse() {\n\t\treturn {\n\t\t\tstatusCode: 200,\n\t\t\theadersSent: false,\n\t\t\twritableEnded: false,\n\t\t\tsetHeader: vi.fn(),\n\t\t\tend(chunk?: unknown) {\n\t\t\t\tvoid chunk\n\t\t\t\tthis.headersSent = true\n\t\t\t\tthis.writableEnded = true\n\t\t\t},\n\t\t}\n\t}\n\n\tclass TestExpressServer extends ExpressServer {\n\t\texposeRawResponder(req: express.Request, res: express.Response) {\n\t\t\treturn this.createRawResponder(req, res)\n\t\t}\n\t}\n\n\tdescribe('ExpressServer raw responder', () => {\n\t\ttest('passes the Express request and response to the raw Node handler', async () => {\n\t\t\tensureTestInstance()\n\t\t\tconst server = TestExpressServer.create({ port: 0, requests: { log: false } })\n\t\t\tconst req = { marker: 'request' } as unknown as express.Request\n\t\t\tconst res = createExpressResponse() as unknown as express.Response\n\t\t\tlet received: { request: unknown; response: unknown } | null = null\n\n\t\t\tawait server.exposeRawResponder(\n\t\t\t\treq,\n\t\t\t\tres,\n\t\t\t)(async (request, response) => {\n\t\t\t\treceived = { request, response }\n\t\t\t\tresponse.end('ok')\n\t\t\t})\n\n\t\t\texpect(received).toEqual({ request: req, response: res })\n\t\t})\n\t})\n}\n"],"mappings":";;;;;;;;;;;;;AAAA,OAAO,UAAU;AAEjB,OAAO,YAAY;AACnB,OAAO,UAAU;AACjB,OAAO,aAAa;AACpB,OAAO,gBAAgB;AACvB,SAAS,iBAAiB;AAE1B,OAAO,YAAY;AACnB,SAAS,gBAAgB;AAQlB,IAAM,gBAAN,cAA4B,aAAa,kBAAkB,MAAM,EAAE;AAAA,EACzE;AAAA,EACA;AAAA,EAEU,YAAY,QAAqC;AAC1D,UAAM,MAAM;AACZ,UAAM,MAAM,QAAQ;AACpB,UAAM,WAAW,SAAS,IAAI;AAC9B,UAAM,aAAa,KAAK,aAAa,GAAG;AACxC,SAAK,OAAO;AACZ,SAAK,cAAc;AAEnB,SAAK,MAAM,YAAY,MAAM;AAE7B,QAAI,QAAQ,cAAc;AAC1B,QAAI,OAAO,SAAS,IAAK,KAAI,IAAI,SAAS,EAAE,QAAQ,SAAS,IAAI,CAAC,CAAC;AACnE,QAAI,IAAI,QAAQ,KAAK,CAAC;AACtB,QAAI,IAAI,QAAQ,KAAK,CAAC;AACtB,QAAI,IAAI,OAAO,CAAC;AAChB,QAAI;AAAA,MACH,OAAO;AAAA,QACN,2BAA2B,EAAE,QAAQ,eAAe;AAAA,QACpD,uBAAuB;AAAA,MACxB,CAAC;AAAA,IACF;AACA,QAAI,IAAI,KAAK,KAAK,IAAI,CAAC;AACvB,QAAI,IAAI,QAAQ,WAAW,EAAE,UAAU,MAAM,CAAC,CAAC;AAC/C,QAAI,OAAO,WAAY,KAAI,IAAI,QAAQ,OAAO,OAAO,UAAU,CAAC;AAChE,QAAI;AAAA,MACH,WAAW;AAAA,QACV,QAAQ,EAAE,UAAU,SAAS,SAAS,MAAM,wBAAwB,OAAO,KAAK;AAAA,QAChF,cAAc;AAAA,MACf,CAAC;AAAA,IACF;AACA,QAAI,OAAO,SAAS,UAAU;AAC7B,UAAI;AAAA,QACH,UAAU;AAAA,UACT,UAAU,OAAO,SAAS,UAAU;AAAA,UACpC,OAAO,OAAO,SAAS,UAAU;AAAA,UACjC,SAAS,CAAC,GAAoB,QAC7B,IAAI,OAAO,YAAY,eAAe,EAAE,KAAK,CAAC,EAAE,SAAS,oBAAoB,CAAC,CAAC;AAAA,QACjF,CAAC;AAAA,MACF;AAAA,EAMF;AAAA,EAEA,MAAgB,aAAa,KAAU;AACtC,UAAM,QAAQ,OAAO;AAAA,MACpB,MAAM,QAAQ;AAAA,QACb,OAAO,QAAQ,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,IAAI,MAAM;AAC1D,gBAAM,UAAU,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAClD,gBAAM,YAA4B,MAAM,QAAQ;AAAA,YAC/C,QAAQ,IAAI,OAAO,OAAY;AAAA,cAC9B,MAAM,EAAE;AAAA,cACR,MAAM,EAAE;AAAA,cACR,MAAM,EAAE;AAAA,cACR,aAAa,EAAE;AAAA,cACf,MAAM,EAAE;AAAA,cACR,UAAU,MAAM,iBAAiB,EAAE,IAAI;AAAA,YACxC,EAAE;AAAA,UACH;AACA,iBAAc,CAAC,KAAK,SAAS;AAAA,QAC9B,CAAC;AAAA,MACF;AAAA,IACD;AAEA,WAAO,IAAI,QAAa;AAAA,MACvB,IAAI,IAAI;AAAA,MACR,MAAM,IAAI,QAAQ,CAAC;AAAA,MACnB,SAAS,IAAI,WAAW,CAAC;AAAA,MACzB,QAAQ,IAAI,UAAU,CAAC;AAAA,MACvB,OAAO,IAAI,SAAS,CAAC;AAAA,MACrB,QAAa,IAAI;AAAA,MACjB,MAAM,IAAI;AAAA,MACV,SAAS,IAAI;AAAA,MACb;AAAA,IACD,CAAC;AAAA,EACF;AAAA,EAEA,MAAgB,eAAe,KAAU,UAAyB;AACjE,QAAI,CAAC,SAAS,OAAO;AACpB,aAAO,QAAQ,SAAS,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,OAAO,KAAK,KAAe,CAAC;AAC3F,aAAO,QAAQ,SAAS,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC;AACpG,YAAM,OAAO,SAAS,SAAS,QAAQ,SAAS,SAAS,SAAY,SAAS;AAC9E,UAAI,OAAO,SAAS,MAAM,EAAE,IAAI,EAAE,SAAS,IAAI,EAAE,IAAI;AAAA,IACtD,OAAO;AACN,eAAS,KAAK,KAAK,GAAG;AAAA,IACvB;AAAA,EACD;AAAA,EAEU,mBAAmB,KAAsB,KAAqC;AACvF,WAAO,KAAK,uBAAuB,EAAE,SAAS,KAAK,UAAU,IAAI,CAAC;AAAA,EACnE;AAAA,EAEU,cAAc,QAAqB,MAAc,IAA2C;AACrG,SAAK,KAAK,MAAM,IAAI,MAAM,OAAO,KAAU,QAAa,GAAG,KAAK,GAAG,CAAC;AAAA,EACrE;AAAA,EAEU,qBAAqB,IAAyD;AACvF,SAAK,KAAK,IAAI,OAAO,KAAU,KAAU,KAAU,UAAe,GAAG,KAAK,KAAK,GAAG,CAAC;AAAA,EACpF;AAAA,EAEU,wBAAwB,IAA2C;AAC5E,SAAK,KAAK,IAAI,OAAO,KAAU,KAAU,UAAe,GAAG,KAAK,GAAG,CAAC;AAAA,EACrE;AAAA,EAEU,YAAY,MAAc;AACnC,WAAO,IAAI,QAAiB,CAAC,SAA+B,WAA+B;AAC1F,UAAI;AACH,cAAM,SAAS,KAAK,YAAY,OAAO,EAAE,MAAM,WAAW,KAAK,GAAG,YAAY,QAAQ,IAAI,CAAC;AAC3F,iBAAS,GAAG,SAAS,OAAO,KAAK;AAAA,MAClC,SAAS,KAAK;AACb,eAAc,GAAG;AAAA,MAClB;AAAA,IACD,CAAC;AAAA,EACF;AACD;AAEA,IAAI,QAAoB;AAKvB,MAAS,qBAAT,WAA8B;AAC7B,UAAM,WAAW,SAAS,SAAS,KAAK,SAAS,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAAO,SAAS,EAAE,CAAC;AACpH,QAAI,CAAC,kBAAkB,+BAA+B;AACrD,eAAS,MAAM,eAAe;AAC9B,wBAAkB,gCAAgC;AAAA,IACnD;AAAA,EACD,GAES,wBAAT,WAAiC;AAChC,WAAO;AAAA,MACN,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,eAAe;AAAA,MACf,WAAW,GAAG,GAAG;AAAA,MACjB,IAAI,OAAiB;AACpB,aAAK;AACL,aAAK,cAAc;AACnB,aAAK,gBAAgB;AAAA,MACtB;AAAA,IACD;AAAA,EACD;AApBS,EAAAA,sBAAA,oBAQAC,yBAAA;AAZT,QAAM,EAAE,UAAU,QAAQ,MAAM,GAAG,IAAI;AAEvC,QAAM,oBAAoB;AAAA,EAwB1B,MAAM,0BAA0B,cAAc;AAAA,IAC7C,mBAAmB,KAAsB,KAAuB;AAC/D,aAAO,KAAK,mBAAmB,KAAK,GAAG;AAAA,IACxC;AAAA,EACD;AAEA,WAAS,+BAA+B,MAAM;AAC7C,SAAK,mEAAmE,YAAY;AACnF,yBAAmB;AACnB,YAAM,SAAS,kBAAkB,OAAO,EAAE,MAAM,GAAG,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;AAC7E,YAAM,MAAM,EAAE,QAAQ,UAAU;AAChC,YAAM,MAAM,sBAAsB;AAClC,UAAI,WAA2D;AAE/D,YAAM,OAAO;AAAA,QACZ;AAAA,QACA;AAAA,MACD,EAAE,OAAO,SAAS,aAAa;AAC9B,mBAAW,EAAE,SAAS,SAAS;AAC/B,iBAAS,IAAI,IAAI;AAAA,MAClB,CAAC;AAED,aAAO,QAAQ,EAAE,QAAQ,EAAE,SAAS,KAAK,UAAU,IAAI,CAAC;AAAA,IACzD,CAAC;AAAA,EACF,CAAC;AACF;AA/CU,IAAAD;AAQA,IAAAC;","names":["ensureTestInstance","createExpressResponse"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{B as d,C as y,J as f,K as o,g as p,m as c,q as l,u}from "../../../chunk-FLAPYQUT.min.mjs";import"../../../chunk-DSUJ5FUL.min.mjs";import"../../../chunk-AQY7QVYI.min.mjs";import R from"@fastify/cookie";import h from"@fastify/cors";import g from"@fastify/formbody";import w from"@fastify/helmet";import q from"@fastify/multipart";import F from"@fastify/rate-limit";import b from"@fastify/static";import v from"fastify";import S from"qs";var m=class extends c(d,y){#e;constructor(e){super(e);let s=o.get(),t=v({disableRequestLogging:!e.requests.log,loggerInstance:e.requests.log?s.log:void 0,ajv:{customOptions:{coerceTypes:!1}},routerOptions:{ignoreTrailingSlash:!0,caseSensitive:!1},schemaErrorFormatter:(r,a)=>new f(r.map(i=>({messages:[i.message??""],field:`${a}${i.instancePath}`.replaceAll("/",".")})))});this.#e=t,this.setup(t.server,e),t.decorateRequest("savedReq",null),t.setValidatorCompiler(()=>()=>!0),t.setSerializerCompiler(()=>r=>JSON.stringify(r)),e.publicPath&&t.register(b,{root:e.publicPath}),t.register(R,{}),t.register(h,this.cors),t.register(g,{parser:r=>S.parse(r)}),t.register(w,{crossOriginResourcePolicy:{policy:"cross-origin"},contentSecurityPolicy:!1}),t.register(q,{attachFieldsToBody:"keyValues",throwFileSizeLimit:!1,limits:{fileSize:s.settings.utils.maxFileUploadSizeInMb*1024*1024},onFile:async r=>{let a=await r.toBuffer(),i={name:r.filename,type:r.mimetype,size:a.byteLength,isTruncated:r.file.truncated,data:a,duration:await l(a)};r.value=i}}),e.requests.rateLimit.enabled&&t.register(F,{max:e.requests.rateLimit.limit,timeWindow:e.requests.rateLimit.periodInMs,errorResponseBuilder:(r,a)=>({statusCode:p.TooManyRequests,message:JSON.stringify([{message:`Too Many Requests. Retry in ${a.after}`}])})})}async parseRequest(e){let{body:s,files:t}=k(e.body??{});return new u({ip:e.ip,body:s,cookies:e.cookies??{},params:e.params??{},query:e.query??{},method:e.method,path:e.url,headers:e.headers,files:t})}async handleResponse(e,s){for(let[t,{value:r,...a}]of Object.entries(s.cookies))e=e.setCookie(t,r,a);await e.status(s.status).headers(s.headers).send(s.body)}createRawResponder(e,s){return this.createNodeRawResponder({request:e.raw,response:s.raw,beforeHandle:()=>s.hijack()})}registerRoute(e,s,t){this.#e.register(async r=>{r.route({url:s,method:e,handler:t})})}registerErrorHandler(e){this.#e.setErrorHandler(e)}registerNotFoundHandler(e){this.#e.setNotFoundHandler(e)}async startServer(e){return await this.#e.ready(),await this.#e.listen({port:e,host:"0.0.0.0"}),o.on("close",this.#e.close),!0}};function k(n){if(typeof n!="object")return{body:n,files:{}};let e=Object.entries(n??{}),s=a=>Array.isArray(a)?s(a.at(0)):Buffer.isBuffer(a?.data),t=e.filter(([a,i])=>s(i)).map(([a,i])=>[a,Array.isArray(i)?i:[i]]),r=e.filter(([a,i])=>!s(i));return{body:Object.fromEntries(r),files:Object.fromEntries(t)}}export{m as FastifyServer};
|
|
2
|
+
//# sourceMappingURL=index.min.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/server/adapters/fastify/index.ts"],"sourcesContent":["import fastifyCookie from '@fastify/cookie'\nimport fastifyCors from '@fastify/cors'\nimport fastifyFormBody from '@fastify/formbody'\nimport fastifyHelmet from '@fastify/helmet'\nimport fastifyMultipart from '@fastify/multipart'\nimport fastifyRateLimit from '@fastify/rate-limit'\nimport fastifyStatic from '@fastify/static'\nimport Fastify, { type FastifyReply, type FastifyRequest } from 'fastify'\n// import fastifySlowDown from 'fastify-slow-down'\nimport qs from 'qs'\n\nimport { ValidationError } from '../../../errors'\nimport { Instance } from '../../../instance'\nimport { configurable, getMediaDuration } from '../../../utilities'\nimport { Request, Response } from '../../requests'\nimport { StatusCodes, type IncomingFile, type MethodsEnum } from '../../types'\nimport { type RawResponder, Server, serverConfigPipe } from '../base'\n\nexport class FastifyServer extends configurable(serverConfigPipe, Server) {\n\t#app: ReturnType<typeof Fastify>\n\n\tprotected constructor(config: typeof FastifyServer.Config) {\n\t\tsuper(config)\n\t\tconst instance = Instance.get()\n\t\tconst app = Fastify({\n\t\t\tdisableRequestLogging: !config.requests.log,\n\t\t\tloggerInstance: config.requests.log ? instance.log : undefined,\n\t\t\tajv: { customOptions: { coerceTypes: false } },\n\t\t\trouterOptions: {\n\t\t\t\tignoreTrailingSlash: true,\n\t\t\t\tcaseSensitive: false,\n\t\t\t},\n\t\t\tschemaErrorFormatter: (errors, data) =>\n\t\t\t\tnew ValidationError(\n\t\t\t\t\terrors.map((error) => ({\n\t\t\t\t\t\tmessages: [error.message ?? ''],\n\t\t\t\t\t\tfield: `${data}${error.instancePath}`.replaceAll('/', '.'),\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t})\n\t\tthis.#app = app\n\n\t\tthis.setup(app.server, config)\n\n\t\tapp.decorateRequest('savedReq', null)\n\t\tapp.setValidatorCompiler(() => () => true)\n\t\tapp.setSerializerCompiler(() => (data) => JSON.stringify(data))\n\t\tif (config.publicPath) app.register(fastifyStatic, { root: config.publicPath })\n\t\tapp.register(fastifyCookie, {})\n\t\tapp.register(fastifyCors, this.cors)\n\t\tapp.register(fastifyFormBody, { parser: (str) => qs.parse(str) })\n\t\tapp.register(fastifyHelmet, { crossOriginResourcePolicy: { policy: 'cross-origin' }, contentSecurityPolicy: false })\n\t\tapp.register(fastifyMultipart, {\n\t\t\tattachFieldsToBody: 'keyValues',\n\t\t\tthrowFileSizeLimit: false,\n\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\tonFile: async (f) => {\n\t\t\t\tconst buffer = await f.toBuffer()\n\t\t\t\tconst parsed: IncomingFile = {\n\t\t\t\t\tname: f.filename,\n\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\tsize: buffer.byteLength,\n\t\t\t\t\tisTruncated: f.file.truncated,\n\t\t\t\t\tdata: buffer,\n\t\t\t\t\tduration: await getMediaDuration(buffer),\n\t\t\t\t}\n\t\t\t\t// @ts-ignore\n\t\t\t\tf.value = parsed\n\t\t\t},\n\t\t})\n\t\t/* if (this.settings.slowdown.enabled) app.register(fastifySlowDown, {\n\t\t\t\ttimeWindow: this.settings.slowdown.periodInMs,\n\t\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\t\tdelay: this.settings.slowdown.delayInMs\n\t\t\t}) */\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.register(fastifyRateLimit, {\n\t\t\t\tmax: config.requests.rateLimit.limit,\n\t\t\t\ttimeWindow: config.requests.rateLimit.periodInMs,\n\t\t\t\terrorResponseBuilder: (_, context) => ({\n\t\t\t\t\tstatusCode: StatusCodes.TooManyRequests,\n\t\t\t\t\tmessage: JSON.stringify([{ message: `Too Many Requests. Retry in ${context.after}` }]),\n\t\t\t\t}),\n\t\t\t})\n\t}\n\n\tprotected async parseRequest(req: any) {\n\t\tconst { body, files } = excludeBufferKeys(req.body ?? {})\n\n\t\treturn new Request({\n\t\t\tip: req.ip,\n\t\t\tbody,\n\t\t\tcookies: req.cookies ?? {},\n\t\t\tparams: req.params ?? <any>{},\n\t\t\tquery: req.query ?? {},\n\t\t\tmethod: <any>req.method,\n\t\t\tpath: req.url,\n\t\t\theaders: req.headers,\n\t\t\tfiles,\n\t\t})\n\t}\n\n\tprotected async handleResponse(res: any, response: Response<any>) {\n\t\tfor (const [key, { value, ...opts }] of Object.entries(response.cookies)) res = res.setCookie(key, value, opts)\n\t\tawait res.status(response.status).headers(response.headers).send(response.body)\n\t}\n\n\tprotected createRawResponder(req: FastifyRequest, res: FastifyReply): RawResponder {\n\t\treturn this.createNodeRawResponder({ request: req.raw, response: res.raw, beforeHandle: () => res.hijack() })\n\t}\n\n\tprotected registerRoute(method: MethodsEnum, path: string, cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app.register(async (inst) => {\n\t\t\tinst.route({ url: path, method, handler: cb })\n\t\t})\n\t}\n\n\tprotected registerErrorHandler(cb: (error: Error, req: any, res: any) => Promise<void>) {\n\t\tthis.#app.setErrorHandler(cb)\n\t}\n\n\tprotected registerNotFoundHandler(cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app.setNotFoundHandler(cb)\n\t}\n\n\tprotected async startServer(port: number) {\n\t\tawait this.#app.ready()\n\t\tawait this.#app.listen({ port, host: '0.0.0.0' })\n\t\tInstance.on('close', this.#app.close)\n\t\treturn true\n\t}\n}\n\nfunction excludeBufferKeys<T>(body: T) {\n\tif (typeof body !== 'object') return { body, files: {} }\n\tconst entries = Object.entries(body ?? {})\n\tconst isFile = (val: any) => (Array.isArray(val) ? isFile(val.at(0)) : Buffer.isBuffer(val?.data))\n\tconst fileEntries = entries.filter(([_, value]) => isFile(value)).map(([key, value]) => [key, Array.isArray(value) ? value : [value]])\n\tconst nonFileEntries = entries.filter(([_, value]) => !isFile(value))\n\treturn {\n\t\tbody: <T>Object.fromEntries(nonFileEntries),\n\t\tfiles: <Record<string, IncomingFile[]>>Object.fromEntries(fileEntries),\n\t}\n}\n\nif (import.meta.vitest) {\n\tconst { describe, expect, test, vi } = import.meta.vitest\n\n\tconst testInstanceState = globalThis as typeof globalThis & { __equippedTestInstanceAliased?: boolean }\n\n\tfunction ensureTestInstance() {\n\t\tconst instance = Instance.maybeGet() ?? Instance.create({ app: { name: 'equipped-test' }, log: { level: 'silent' } })\n\t\tif (!testInstanceState.__equippedTestInstanceAliased) {\n\t\t\tinstance.alias('equipped-test')\n\t\t\ttestInstanceState.__equippedTestInstanceAliased = true\n\t\t}\n\t}\n\n\tfunction createRawResponse() {\n\t\treturn {\n\t\t\tstatusCode: 200,\n\t\t\theadersSent: false,\n\t\t\twritableEnded: false,\n\t\t\tsetHeader: vi.fn(),\n\t\t\tend(chunk?: unknown) {\n\t\t\t\tvoid chunk\n\t\t\t\tthis.headersSent = true\n\t\t\t\tthis.writableEnded = true\n\t\t\t},\n\t\t}\n\t}\n\n\tclass TestFastifyServer extends FastifyServer {\n\t\texposeRawResponder(req: FastifyRequest, res: FastifyReply) {\n\t\t\treturn this.createRawResponder(req, res)\n\t\t}\n\t}\n\n\tdescribe('FastifyServer raw responder', () => {\n\t\ttest('hijacks the Fastify reply before passing Node raw request and response to the handler', async () => {\n\t\t\tensureTestInstance()\n\t\t\tconst server = TestFastifyServer.create({ port: 0, requests: { log: false } })\n\t\t\tconst rawRequest = { marker: 'request' }\n\t\t\tconst rawResponse = createRawResponse()\n\t\t\tconst reply = { raw: rawResponse, hijack: vi.fn() } as unknown as FastifyReply\n\t\t\tconst request = { raw: rawRequest } as unknown as FastifyRequest\n\t\t\tlet received: { request: unknown; response: unknown } | null = null\n\n\t\t\tawait server.exposeRawResponder(\n\t\t\t\trequest,\n\t\t\t\treply,\n\t\t\t)(async (req, res) => {\n\t\t\t\treceived = { request: req, response: res }\n\t\t\t\tres.end('ok')\n\t\t\t})\n\n\t\t\texpect(reply.hijack).toHaveBeenCalledOnce()\n\t\t\texpect(received).toEqual({ request: rawRequest, response: rawResponse })\n\t\t})\n\t})\n}\n"],"mappings":"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","names":["fastifyCookie","fastifyCors","fastifyFormBody","fastifyHelmet","fastifyMultipart","fastifyRateLimit","fastifyStatic","Fastify","qs","FastifyServer","configurable","serverConfigPipe","Server","#app","config","instance","Instance","app","Fastify","errors","data","ValidationError","error","fastifyStatic","fastifyCookie","fastifyCors","fastifyFormBody","str","qs","fastifyHelmet","fastifyMultipart","f","buffer","parsed","getMediaDuration","fastifyRateLimit","_","context","StatusCodes","req","body","files","excludeBufferKeys","Request","res","response","key","value","opts","method","path","cb","inst","port","entries","isFile","val","fileEntries","nonFileEntries"]}
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Instance,
|
|
3
|
+
Request,
|
|
4
|
+
Server,
|
|
5
|
+
StatusCodes,
|
|
6
|
+
ValidationError,
|
|
7
|
+
configurable,
|
|
8
|
+
getMediaDuration,
|
|
9
|
+
serverConfigPipe
|
|
10
|
+
} from "../../../chunk-MDQKODYQ.mjs";
|
|
11
|
+
import "../../../chunk-VCCS7CAI.mjs";
|
|
12
|
+
import "../../../chunk-J5LGTIGS.mjs";
|
|
13
|
+
|
|
14
|
+
// src/server/adapters/fastify/index.ts
|
|
15
|
+
import fastifyCookie from "@fastify/cookie";
|
|
16
|
+
import fastifyCors from "@fastify/cors";
|
|
17
|
+
import fastifyFormBody from "@fastify/formbody";
|
|
18
|
+
import fastifyHelmet from "@fastify/helmet";
|
|
19
|
+
import fastifyMultipart from "@fastify/multipart";
|
|
20
|
+
import fastifyRateLimit from "@fastify/rate-limit";
|
|
21
|
+
import fastifyStatic from "@fastify/static";
|
|
22
|
+
import Fastify from "fastify";
|
|
23
|
+
import qs from "qs";
|
|
24
|
+
var FastifyServer = class extends configurable(serverConfigPipe, Server) {
|
|
25
|
+
#app;
|
|
26
|
+
constructor(config) {
|
|
27
|
+
super(config);
|
|
28
|
+
const instance = Instance.get();
|
|
29
|
+
const app = Fastify({
|
|
30
|
+
disableRequestLogging: !config.requests.log,
|
|
31
|
+
loggerInstance: config.requests.log ? instance.log : void 0,
|
|
32
|
+
ajv: { customOptions: { coerceTypes: false } },
|
|
33
|
+
routerOptions: {
|
|
34
|
+
ignoreTrailingSlash: true,
|
|
35
|
+
caseSensitive: false
|
|
36
|
+
},
|
|
37
|
+
schemaErrorFormatter: (errors, data) => new ValidationError(
|
|
38
|
+
errors.map((error) => ({
|
|
39
|
+
messages: [error.message ?? ""],
|
|
40
|
+
field: `${data}${error.instancePath}`.replaceAll("/", ".")
|
|
41
|
+
}))
|
|
42
|
+
)
|
|
43
|
+
});
|
|
44
|
+
this.#app = app;
|
|
45
|
+
this.setup(app.server, config);
|
|
46
|
+
app.decorateRequest("savedReq", null);
|
|
47
|
+
app.setValidatorCompiler(() => () => true);
|
|
48
|
+
app.setSerializerCompiler(() => (data) => JSON.stringify(data));
|
|
49
|
+
if (config.publicPath) app.register(fastifyStatic, { root: config.publicPath });
|
|
50
|
+
app.register(fastifyCookie, {});
|
|
51
|
+
app.register(fastifyCors, this.cors);
|
|
52
|
+
app.register(fastifyFormBody, { parser: (str) => qs.parse(str) });
|
|
53
|
+
app.register(fastifyHelmet, { crossOriginResourcePolicy: { policy: "cross-origin" }, contentSecurityPolicy: false });
|
|
54
|
+
app.register(fastifyMultipart, {
|
|
55
|
+
attachFieldsToBody: "keyValues",
|
|
56
|
+
throwFileSizeLimit: false,
|
|
57
|
+
limits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },
|
|
58
|
+
onFile: async (f) => {
|
|
59
|
+
const buffer = await f.toBuffer();
|
|
60
|
+
const parsed = {
|
|
61
|
+
name: f.filename,
|
|
62
|
+
type: f.mimetype,
|
|
63
|
+
size: buffer.byteLength,
|
|
64
|
+
isTruncated: f.file.truncated,
|
|
65
|
+
data: buffer,
|
|
66
|
+
duration: await getMediaDuration(buffer)
|
|
67
|
+
};
|
|
68
|
+
f.value = parsed;
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
if (config.requests.rateLimit.enabled)
|
|
72
|
+
app.register(fastifyRateLimit, {
|
|
73
|
+
max: config.requests.rateLimit.limit,
|
|
74
|
+
timeWindow: config.requests.rateLimit.periodInMs,
|
|
75
|
+
errorResponseBuilder: (_, context) => ({
|
|
76
|
+
statusCode: StatusCodes.TooManyRequests,
|
|
77
|
+
message: JSON.stringify([{ message: `Too Many Requests. Retry in ${context.after}` }])
|
|
78
|
+
})
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
async parseRequest(req) {
|
|
82
|
+
const { body, files } = excludeBufferKeys(req.body ?? {});
|
|
83
|
+
return new Request({
|
|
84
|
+
ip: req.ip,
|
|
85
|
+
body,
|
|
86
|
+
cookies: req.cookies ?? {},
|
|
87
|
+
params: req.params ?? {},
|
|
88
|
+
query: req.query ?? {},
|
|
89
|
+
method: req.method,
|
|
90
|
+
path: req.url,
|
|
91
|
+
headers: req.headers,
|
|
92
|
+
files
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
async handleResponse(res, response) {
|
|
96
|
+
for (const [key, { value, ...opts }] of Object.entries(response.cookies)) res = res.setCookie(key, value, opts);
|
|
97
|
+
await res.status(response.status).headers(response.headers).send(response.body);
|
|
98
|
+
}
|
|
99
|
+
createRawResponder(req, res) {
|
|
100
|
+
return this.createNodeRawResponder({ request: req.raw, response: res.raw, beforeHandle: () => res.hijack() });
|
|
101
|
+
}
|
|
102
|
+
registerRoute(method, path, cb) {
|
|
103
|
+
this.#app.register(async (inst) => {
|
|
104
|
+
inst.route({ url: path, method, handler: cb });
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
registerErrorHandler(cb) {
|
|
108
|
+
this.#app.setErrorHandler(cb);
|
|
109
|
+
}
|
|
110
|
+
registerNotFoundHandler(cb) {
|
|
111
|
+
this.#app.setNotFoundHandler(cb);
|
|
112
|
+
}
|
|
113
|
+
async startServer(port) {
|
|
114
|
+
await this.#app.ready();
|
|
115
|
+
await this.#app.listen({ port, host: "0.0.0.0" });
|
|
116
|
+
Instance.on("close", this.#app.close);
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
function excludeBufferKeys(body) {
|
|
121
|
+
if (typeof body !== "object") return { body, files: {} };
|
|
122
|
+
const entries = Object.entries(body ?? {});
|
|
123
|
+
const isFile = (val) => Array.isArray(val) ? isFile(val.at(0)) : Buffer.isBuffer(val?.data);
|
|
124
|
+
const fileEntries = entries.filter(([_, value]) => isFile(value)).map(([key, value]) => [key, Array.isArray(value) ? value : [value]]);
|
|
125
|
+
const nonFileEntries = entries.filter(([_, value]) => !isFile(value));
|
|
126
|
+
return {
|
|
127
|
+
body: Object.fromEntries(nonFileEntries),
|
|
128
|
+
files: Object.fromEntries(fileEntries)
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
if (void 0) {
|
|
132
|
+
let ensureTestInstance = function() {
|
|
133
|
+
const instance = Instance.maybeGet() ?? Instance.create({ app: { name: "equipped-test" }, log: { level: "silent" } });
|
|
134
|
+
if (!testInstanceState.__equippedTestInstanceAliased) {
|
|
135
|
+
instance.alias("equipped-test");
|
|
136
|
+
testInstanceState.__equippedTestInstanceAliased = true;
|
|
137
|
+
}
|
|
138
|
+
}, createRawResponse = function() {
|
|
139
|
+
return {
|
|
140
|
+
statusCode: 200,
|
|
141
|
+
headersSent: false,
|
|
142
|
+
writableEnded: false,
|
|
143
|
+
setHeader: vi.fn(),
|
|
144
|
+
end(chunk) {
|
|
145
|
+
void chunk;
|
|
146
|
+
this.headersSent = true;
|
|
147
|
+
this.writableEnded = true;
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
ensureTestInstance2 = ensureTestInstance, createRawResponse2 = createRawResponse;
|
|
152
|
+
const { describe, expect, test, vi } = void 0;
|
|
153
|
+
const testInstanceState = globalThis;
|
|
154
|
+
class TestFastifyServer extends FastifyServer {
|
|
155
|
+
exposeRawResponder(req, res) {
|
|
156
|
+
return this.createRawResponder(req, res);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
describe("FastifyServer raw responder", () => {
|
|
160
|
+
test("hijacks the Fastify reply before passing Node raw request and response to the handler", async () => {
|
|
161
|
+
ensureTestInstance();
|
|
162
|
+
const server = TestFastifyServer.create({ port: 0, requests: { log: false } });
|
|
163
|
+
const rawRequest = { marker: "request" };
|
|
164
|
+
const rawResponse = createRawResponse();
|
|
165
|
+
const reply = { raw: rawResponse, hijack: vi.fn() };
|
|
166
|
+
const request = { raw: rawRequest };
|
|
167
|
+
let received = null;
|
|
168
|
+
await server.exposeRawResponder(
|
|
169
|
+
request,
|
|
170
|
+
reply
|
|
171
|
+
)(async (req, res) => {
|
|
172
|
+
received = { request: req, response: res };
|
|
173
|
+
res.end("ok");
|
|
174
|
+
});
|
|
175
|
+
expect(reply.hijack).toHaveBeenCalledOnce();
|
|
176
|
+
expect(received).toEqual({ request: rawRequest, response: rawResponse });
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
var ensureTestInstance2;
|
|
181
|
+
var createRawResponse2;
|
|
182
|
+
export {
|
|
183
|
+
FastifyServer
|
|
184
|
+
};
|
|
185
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/server/adapters/fastify/index.ts"],"sourcesContent":["import fastifyCookie from '@fastify/cookie'\nimport fastifyCors from '@fastify/cors'\nimport fastifyFormBody from '@fastify/formbody'\nimport fastifyHelmet from '@fastify/helmet'\nimport fastifyMultipart from '@fastify/multipart'\nimport fastifyRateLimit from '@fastify/rate-limit'\nimport fastifyStatic from '@fastify/static'\nimport Fastify, { type FastifyReply, type FastifyRequest } from 'fastify'\n// import fastifySlowDown from 'fastify-slow-down'\nimport qs from 'qs'\n\nimport { ValidationError } from '../../../errors'\nimport { Instance } from '../../../instance'\nimport { configurable, getMediaDuration } from '../../../utilities'\nimport { Request, Response } from '../../requests'\nimport { StatusCodes, type IncomingFile, type MethodsEnum } from '../../types'\nimport { type RawResponder, Server, serverConfigPipe } from '../base'\n\nexport class FastifyServer extends configurable(serverConfigPipe, Server) {\n\t#app: ReturnType<typeof Fastify>\n\n\tprotected constructor(config: typeof FastifyServer.Config) {\n\t\tsuper(config)\n\t\tconst instance = Instance.get()\n\t\tconst app = Fastify({\n\t\t\tdisableRequestLogging: !config.requests.log,\n\t\t\tloggerInstance: config.requests.log ? instance.log : undefined,\n\t\t\tajv: { customOptions: { coerceTypes: false } },\n\t\t\trouterOptions: {\n\t\t\t\tignoreTrailingSlash: true,\n\t\t\t\tcaseSensitive: false,\n\t\t\t},\n\t\t\tschemaErrorFormatter: (errors, data) =>\n\t\t\t\tnew ValidationError(\n\t\t\t\t\terrors.map((error) => ({\n\t\t\t\t\t\tmessages: [error.message ?? ''],\n\t\t\t\t\t\tfield: `${data}${error.instancePath}`.replaceAll('/', '.'),\n\t\t\t\t\t})),\n\t\t\t\t),\n\t\t})\n\t\tthis.#app = app\n\n\t\tthis.setup(app.server, config)\n\n\t\tapp.decorateRequest('savedReq', null)\n\t\tapp.setValidatorCompiler(() => () => true)\n\t\tapp.setSerializerCompiler(() => (data) => JSON.stringify(data))\n\t\tif (config.publicPath) app.register(fastifyStatic, { root: config.publicPath })\n\t\tapp.register(fastifyCookie, {})\n\t\tapp.register(fastifyCors, this.cors)\n\t\tapp.register(fastifyFormBody, { parser: (str) => qs.parse(str) })\n\t\tapp.register(fastifyHelmet, { crossOriginResourcePolicy: { policy: 'cross-origin' }, contentSecurityPolicy: false })\n\t\tapp.register(fastifyMultipart, {\n\t\t\tattachFieldsToBody: 'keyValues',\n\t\t\tthrowFileSizeLimit: false,\n\t\t\tlimits: { fileSize: instance.settings.utils.maxFileUploadSizeInMb * 1024 * 1024 },\n\t\t\tonFile: async (f) => {\n\t\t\t\tconst buffer = await f.toBuffer()\n\t\t\t\tconst parsed: IncomingFile = {\n\t\t\t\t\tname: f.filename,\n\t\t\t\t\ttype: f.mimetype,\n\t\t\t\t\tsize: buffer.byteLength,\n\t\t\t\t\tisTruncated: f.file.truncated,\n\t\t\t\t\tdata: buffer,\n\t\t\t\t\tduration: await getMediaDuration(buffer),\n\t\t\t\t}\n\t\t\t\t// @ts-ignore\n\t\t\t\tf.value = parsed\n\t\t\t},\n\t\t})\n\t\t/* if (this.settings.slowdown.enabled) app.register(fastifySlowDown, {\n\t\t\t\ttimeWindow: this.settings.slowdown.periodInMs,\n\t\t\t\tdelayAfter: this.settings.slowdown.delayAfter,\n\t\t\t\tdelay: this.settings.slowdown.delayInMs\n\t\t\t}) */\n\t\tif (config.requests.rateLimit.enabled)\n\t\t\tapp.register(fastifyRateLimit, {\n\t\t\t\tmax: config.requests.rateLimit.limit,\n\t\t\t\ttimeWindow: config.requests.rateLimit.periodInMs,\n\t\t\t\terrorResponseBuilder: (_, context) => ({\n\t\t\t\t\tstatusCode: StatusCodes.TooManyRequests,\n\t\t\t\t\tmessage: JSON.stringify([{ message: `Too Many Requests. Retry in ${context.after}` }]),\n\t\t\t\t}),\n\t\t\t})\n\t}\n\n\tprotected async parseRequest(req: any) {\n\t\tconst { body, files } = excludeBufferKeys(req.body ?? {})\n\n\t\treturn new Request({\n\t\t\tip: req.ip,\n\t\t\tbody,\n\t\t\tcookies: req.cookies ?? {},\n\t\t\tparams: req.params ?? <any>{},\n\t\t\tquery: req.query ?? {},\n\t\t\tmethod: <any>req.method,\n\t\t\tpath: req.url,\n\t\t\theaders: req.headers,\n\t\t\tfiles,\n\t\t})\n\t}\n\n\tprotected async handleResponse(res: any, response: Response<any>) {\n\t\tfor (const [key, { value, ...opts }] of Object.entries(response.cookies)) res = res.setCookie(key, value, opts)\n\t\tawait res.status(response.status).headers(response.headers).send(response.body)\n\t}\n\n\tprotected createRawResponder(req: FastifyRequest, res: FastifyReply): RawResponder {\n\t\treturn this.createNodeRawResponder({ request: req.raw, response: res.raw, beforeHandle: () => res.hijack() })\n\t}\n\n\tprotected registerRoute(method: MethodsEnum, path: string, cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app.register(async (inst) => {\n\t\t\tinst.route({ url: path, method, handler: cb })\n\t\t})\n\t}\n\n\tprotected registerErrorHandler(cb: (error: Error, req: any, res: any) => Promise<void>) {\n\t\tthis.#app.setErrorHandler(cb)\n\t}\n\n\tprotected registerNotFoundHandler(cb: (req: any, res: any) => Promise<void>) {\n\t\tthis.#app.setNotFoundHandler(cb)\n\t}\n\n\tprotected async startServer(port: number) {\n\t\tawait this.#app.ready()\n\t\tawait this.#app.listen({ port, host: '0.0.0.0' })\n\t\tInstance.on('close', this.#app.close)\n\t\treturn true\n\t}\n}\n\nfunction excludeBufferKeys<T>(body: T) {\n\tif (typeof body !== 'object') return { body, files: {} }\n\tconst entries = Object.entries(body ?? {})\n\tconst isFile = (val: any) => (Array.isArray(val) ? isFile(val.at(0)) : Buffer.isBuffer(val?.data))\n\tconst fileEntries = entries.filter(([_, value]) => isFile(value)).map(([key, value]) => [key, Array.isArray(value) ? value : [value]])\n\tconst nonFileEntries = entries.filter(([_, value]) => !isFile(value))\n\treturn {\n\t\tbody: <T>Object.fromEntries(nonFileEntries),\n\t\tfiles: <Record<string, IncomingFile[]>>Object.fromEntries(fileEntries),\n\t}\n}\n\nif (import.meta.vitest) {\n\tconst { describe, expect, test, vi } = import.meta.vitest\n\n\tconst testInstanceState = globalThis as typeof globalThis & { __equippedTestInstanceAliased?: boolean }\n\n\tfunction ensureTestInstance() {\n\t\tconst instance = Instance.maybeGet() ?? Instance.create({ app: { name: 'equipped-test' }, log: { level: 'silent' } })\n\t\tif (!testInstanceState.__equippedTestInstanceAliased) {\n\t\t\tinstance.alias('equipped-test')\n\t\t\ttestInstanceState.__equippedTestInstanceAliased = true\n\t\t}\n\t}\n\n\tfunction createRawResponse() {\n\t\treturn {\n\t\t\tstatusCode: 200,\n\t\t\theadersSent: false,\n\t\t\twritableEnded: false,\n\t\t\tsetHeader: vi.fn(),\n\t\t\tend(chunk?: unknown) {\n\t\t\t\tvoid chunk\n\t\t\t\tthis.headersSent = true\n\t\t\t\tthis.writableEnded = true\n\t\t\t},\n\t\t}\n\t}\n\n\tclass TestFastifyServer extends FastifyServer {\n\t\texposeRawResponder(req: FastifyRequest, res: FastifyReply) {\n\t\t\treturn this.createRawResponder(req, res)\n\t\t}\n\t}\n\n\tdescribe('FastifyServer raw responder', () => {\n\t\ttest('hijacks the Fastify reply before passing Node raw request and response to the handler', async () => {\n\t\t\tensureTestInstance()\n\t\t\tconst server = TestFastifyServer.create({ port: 0, requests: { log: false } })\n\t\t\tconst rawRequest = { marker: 'request' }\n\t\t\tconst rawResponse = createRawResponse()\n\t\t\tconst reply = { raw: rawResponse, hijack: vi.fn() } as unknown as FastifyReply\n\t\t\tconst request = { raw: rawRequest } as unknown as FastifyRequest\n\t\t\tlet received: { request: unknown; response: unknown } | null = null\n\n\t\t\tawait server.exposeRawResponder(\n\t\t\t\trequest,\n\t\t\t\treply,\n\t\t\t)(async (req, res) => {\n\t\t\t\treceived = { request: req, response: res }\n\t\t\t\tres.end('ok')\n\t\t\t})\n\n\t\t\texpect(reply.hijack).toHaveBeenCalledOnce()\n\t\t\texpect(received).toEqual({ request: rawRequest, response: rawResponse })\n\t\t})\n\t})\n}\n"],"mappings":"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","names":["ensureTestInstance","createRawResponse"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import{A as m,B as n,C as o,D as p,f as a,g as b,h as c,i as d,j as e,k as f,u as g,v as h,w as i,x as j,y as k,z as l}from "../chunk-FLAPYQUT.min.mjs";import"../chunk-DSUJ5FUL.min.mjs";import"../chunk-AQY7QVYI.min.mjs";export{j as BaseApiKeyRequestAuthMethod,m as BaseJwtCookieRequestAuthMethod,l as BaseJwtHeaderRequestAuthMethod,k as BaseJwtRequestAuthMethod,i as BaseRequestAuthMethod,a as Methods,g as Request,h as Response,f as Router,o as Server,b as StatusCodes,e as makeErrorMiddleware,c as makeMiddleware,d as makeResponseMiddleware,p as requireAuthUser,n as serverConfigPipe};
|
|
2
2
|
//# sourceMappingURL=index.min.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,10 +1,39 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import {
|
|
2
|
+
BaseApiKeyRequestAuthMethod,
|
|
3
|
+
BaseJwtCookieRequestAuthMethod,
|
|
4
|
+
BaseJwtHeaderRequestAuthMethod,
|
|
5
|
+
BaseJwtRequestAuthMethod,
|
|
6
|
+
BaseRequestAuthMethod,
|
|
7
|
+
Methods,
|
|
8
|
+
Request,
|
|
9
|
+
Response,
|
|
10
|
+
Router,
|
|
11
|
+
Server,
|
|
12
|
+
StatusCodes,
|
|
13
|
+
makeErrorMiddleware,
|
|
14
|
+
makeMiddleware,
|
|
15
|
+
makeResponseMiddleware,
|
|
16
|
+
requireAuthUser,
|
|
17
|
+
serverConfigPipe
|
|
18
|
+
} from "../chunk-MDQKODYQ.mjs";
|
|
19
|
+
import "../chunk-VCCS7CAI.mjs";
|
|
20
|
+
import "../chunk-J5LGTIGS.mjs";
|
|
21
|
+
export {
|
|
22
|
+
BaseApiKeyRequestAuthMethod,
|
|
23
|
+
BaseJwtCookieRequestAuthMethod,
|
|
24
|
+
BaseJwtHeaderRequestAuthMethod,
|
|
25
|
+
BaseJwtRequestAuthMethod,
|
|
26
|
+
BaseRequestAuthMethod,
|
|
27
|
+
Methods,
|
|
28
|
+
Request,
|
|
29
|
+
Response,
|
|
30
|
+
Router,
|
|
31
|
+
Server,
|
|
32
|
+
StatusCodes,
|
|
33
|
+
makeErrorMiddleware,
|
|
34
|
+
makeMiddleware,
|
|
35
|
+
makeResponseMiddleware,
|
|
36
|
+
requireAuthUser,
|
|
37
|
+
serverConfigPipe
|
|
38
|
+
};
|
|
10
39
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/esm/types/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import{l as a,m as b,n as c,o as d,p as e,q as f,r as g,s as h,t as i}from "../chunk-FLAPYQUT.min.mjs";import"../chunk-DSUJ5FUL.min.mjs";import"../chunk-AQY7QVYI.min.mjs";export{a as AuthProviders,c as Hash,g as Random,b as configurable,f as getMediaDuration,e as parseJSONObject,d as parseJSONValue,i as retry,h as sleep};
|
|
2
2
|
//# sourceMappingURL=index.min.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,12 +1,25 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import {
|
|
2
|
+
authProviders_exports,
|
|
3
|
+
configurable,
|
|
4
|
+
getMediaDuration,
|
|
5
|
+
hash_exports,
|
|
6
|
+
parseJSONObject,
|
|
7
|
+
parseJSONValue,
|
|
8
|
+
random_exports,
|
|
9
|
+
retry,
|
|
10
|
+
sleep
|
|
11
|
+
} from "../chunk-MDQKODYQ.mjs";
|
|
12
|
+
import "../chunk-VCCS7CAI.mjs";
|
|
13
|
+
import "../chunk-J5LGTIGS.mjs";
|
|
7
14
|
export {
|
|
8
|
-
AuthProviders,
|
|
9
|
-
Hash,
|
|
10
|
-
Random
|
|
15
|
+
authProviders_exports as AuthProviders,
|
|
16
|
+
hash_exports as Hash,
|
|
17
|
+
random_exports as Random,
|
|
18
|
+
configurable,
|
|
19
|
+
getMediaDuration,
|
|
20
|
+
parseJSONObject,
|
|
21
|
+
parseJSONValue,
|
|
22
|
+
retry,
|
|
23
|
+
sleep
|
|
11
24
|
};
|
|
12
25
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import{c as a,d as b,e as c}from "../chunk-FLAPYQUT.min.mjs";import"../chunk-DSUJ5FUL.min.mjs";import"../chunk-AQY7QVYI.min.mjs";export{b as pipeErrorToValidationError,c as validate,a as ve};
|
|
2
2
|
//# sourceMappingURL=index.min.mjs.map
|