equipped 5.3.0 → 5.3.1
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 +7 -0
- package/dist/cjs/server/adapters/express/index.cjs +47 -1
- package/dist/cjs/server/adapters/express/index.cjs.map +1 -1
- package/dist/cjs/server/adapters/express/index.min.cjs +6 -6
- package/dist/cjs/server/adapters/express/index.min.cjs.map +1 -1
- package/dist/cjs/server/adapters/fastify/index.cjs +47 -1
- package/dist/cjs/server/adapters/fastify/index.cjs.map +1 -1
- package/dist/cjs/server/adapters/fastify/index.min.cjs +6 -6
- package/dist/cjs/server/adapters/fastify/index.min.cjs.map +1 -1
- package/dist/cjs/server/index.cjs +47 -1
- package/dist/cjs/server/index.cjs.map +1 -1
- package/dist/cjs/server/index.min.cjs +6 -6
- package/dist/cjs/server/index.min.cjs.map +1 -1
- package/dist/esm/cache/adapters/in-memory/index.min.mjs +1 -1
- package/dist/esm/cache/adapters/in-memory/index.mjs +2 -2
- package/dist/esm/cache/adapters/redis/index.min.mjs +1 -1
- package/dist/esm/cache/adapters/redis/index.mjs +3 -3
- package/dist/esm/cache/index.min.mjs +1 -1
- package/dist/esm/cache/index.mjs +2 -2
- package/dist/esm/{chunk-QHLKB47N.min.mjs → chunk-2GGMLKRP.min.mjs} +2 -2
- package/dist/esm/{chunk-PQCBVQL6.mjs → chunk-3TP7NINX.mjs} +2 -2
- package/dist/esm/{chunk-PNZNNUMN.mjs → chunk-5PZACGPI.mjs} +3 -3
- package/dist/esm/{chunk-ZGMFFK6Y.min.mjs → chunk-676VIABN.min.mjs} +2 -2
- package/dist/esm/{chunk-4MXYZS5R.mjs → chunk-7CP7ZE2O.mjs} +2 -2
- package/dist/esm/{chunk-5VW3JAFR.min.mjs → chunk-7NF7PV6S.min.mjs} +2 -2
- package/dist/esm/{chunk-4JLDXF7T.min.mjs → chunk-7SQ5JQYR.min.mjs} +2 -2
- package/dist/esm/{chunk-MDQKODYQ.mjs → chunk-A4P7P6BU.mjs} +48 -2
- package/dist/esm/chunk-A4P7P6BU.mjs.map +1 -0
- package/dist/esm/{chunk-JH6EBXY4.mjs → chunk-BWUFPMVG.mjs} +2 -2
- package/dist/esm/{chunk-AKQBDYUO.mjs → chunk-HXFNN6RI.mjs} +3 -3
- package/dist/esm/{chunk-FLAPYQUT.min.mjs → chunk-IN5YKIJ7.min.mjs} +7 -7
- package/dist/esm/chunk-IN5YKIJ7.min.mjs.map +1 -0
- package/dist/esm/{chunk-PCAUXBAG.min.mjs → chunk-IRYCN6PI.min.mjs} +2 -2
- package/dist/esm/{chunk-Z2TZ3KR7.mjs → chunk-LKS5ZE45.mjs} +2 -2
- package/dist/esm/{chunk-SGZNOYC3.min.mjs → chunk-MQXTTWPS.min.mjs} +2 -2
- package/dist/esm/{chunk-B5QQ32YY.min.mjs → chunk-P4PRHHIY.min.mjs} +2 -2
- package/dist/esm/{chunk-TVTYDU2D.mjs → chunk-TSVHZZE4.mjs} +3 -3
- package/dist/esm/dbs/adapters/mongodb/index.min.mjs +1 -1
- package/dist/esm/dbs/adapters/mongodb/index.mjs +3 -3
- package/dist/esm/dbs/index.min.mjs +1 -1
- package/dist/esm/dbs/index.mjs +3 -3
- package/dist/esm/errors/index.min.mjs +1 -1
- package/dist/esm/errors/index.mjs +1 -1
- package/dist/esm/events/adapters/kafka/index.min.mjs +1 -1
- package/dist/esm/events/adapters/kafka/index.mjs +2 -2
- package/dist/esm/events/adapters/rabbitmq/index.min.mjs +1 -1
- package/dist/esm/events/adapters/rabbitmq/index.mjs +1 -1
- package/dist/esm/index.min.mjs +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/instance/index.min.mjs +1 -1
- package/dist/esm/instance/index.mjs +1 -1
- package/dist/esm/introspection-THKMXV5V.min.mjs +2 -0
- package/dist/esm/{introspection-32BRYKYY.mjs → introspection-YJF3QAUK.mjs} +3 -3
- package/dist/esm/jobs/adapters/redis/index.min.mjs +1 -1
- package/dist/esm/jobs/adapters/redis/index.mjs +3 -3
- package/dist/esm/orm/adapters/in-memory/index.min.mjs +1 -1
- package/dist/esm/orm/adapters/in-memory/index.mjs +3 -3
- package/dist/esm/orm/adapters/json/index.min.mjs +1 -1
- package/dist/esm/orm/adapters/json/index.mjs +3 -3
- package/dist/esm/orm/adapters/mongodb/index.min.mjs +1 -1
- package/dist/esm/orm/adapters/mongodb/index.mjs +2 -2
- package/dist/esm/orm/adapters/postgresql/index.min.mjs +2 -2
- package/dist/esm/orm/adapters/postgresql/index.mjs +3 -3
- package/dist/esm/orm/index.min.mjs +1 -1
- package/dist/esm/orm/index.mjs +3 -3
- package/dist/esm/server/adapters/express/index.min.mjs +1 -1
- package/dist/esm/server/adapters/express/index.mjs +1 -1
- package/dist/esm/server/adapters/fastify/index.min.mjs +1 -1
- package/dist/esm/server/adapters/fastify/index.mjs +1 -1
- package/dist/esm/server/index.min.mjs +1 -1
- package/dist/esm/server/index.mjs +1 -1
- package/dist/esm/utilities/index.min.mjs +1 -1
- package/dist/esm/utilities/index.mjs +1 -1
- package/dist/esm/validations/index.min.mjs +1 -1
- package/dist/esm/validations/index.mjs +1 -1
- package/dist/types/{base-DVr0fHil.d.ts → base-BDTBLZ9a.d.ts} +7 -1
- package/dist/types/cache/adapters/in-memory/index.js +2 -2
- package/dist/types/cache/adapters/redis/index.js +3 -3
- package/dist/types/cache/index.js +2 -2
- package/dist/types/{chunk-NJ2FHI3U.js → chunk-4DH3POYM.js} +2 -2
- package/dist/types/{chunk-OHFTQGQG.js → chunk-55CTVK7R.js} +1 -1
- package/dist/types/{chunk-JQ2FWX4W.js → chunk-5Z26ZURE.js} +1 -1
- package/dist/types/{chunk-3M4PBZAQ.js → chunk-IZDJDGOV.js} +2 -2
- package/dist/types/{chunk-XGGGAEET.js → chunk-J3TGB5YQ.js} +1 -1
- package/dist/types/{chunk-3TKJGSCZ.js → chunk-LPB5LS7A.js} +1 -1
- package/dist/types/{chunk-YTY3EFNB.js → chunk-TT5EORDK.js} +47 -1
- package/dist/types/{chunk-65EHKCDZ.js → chunk-YLJNBL6J.js} +2 -2
- package/dist/types/dbs/adapters/mongodb/index.js +3 -3
- package/dist/types/dbs/index.js +3 -3
- package/dist/types/errors/index.js +1 -1
- package/dist/types/events/adapters/kafka/index.js +2 -2
- package/dist/types/events/adapters/rabbitmq/index.js +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/instance/index.js +1 -1
- package/dist/types/{introspection-VOIU3XE6.js → introspection-EHGM4RMO.js} +2 -2
- package/dist/types/jobs/adapters/redis/index.js +3 -3
- package/dist/types/orm/adapters/in-memory/index.js +3 -3
- package/dist/types/orm/adapters/json/index.js +3 -3
- package/dist/types/orm/adapters/mongodb/index.js +2 -2
- package/dist/types/orm/adapters/postgresql/index.js +3 -3
- package/dist/types/orm/index.js +3 -3
- package/dist/types/server/adapters/express/index.d.ts +1 -1
- package/dist/types/server/adapters/express/index.js +1 -1
- package/dist/types/server/adapters/fastify/index.d.ts +1 -1
- package/dist/types/server/adapters/fastify/index.js +1 -1
- package/dist/types/server/index.d.ts +2 -2
- package/dist/types/server/index.js +1 -1
- package/dist/types/utilities/index.js +1 -1
- package/dist/types/validations/index.js +1 -1
- package/package.json +1 -1
- package/dist/esm/chunk-FLAPYQUT.min.mjs.map +0 -1
- package/dist/esm/chunk-MDQKODYQ.mjs.map +0 -1
- package/dist/esm/introspection-A72WMWE3.min.mjs +0 -2
- /package/dist/esm/{chunk-QHLKB47N.min.mjs.map → chunk-2GGMLKRP.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-PQCBVQL6.mjs.map → chunk-3TP7NINX.mjs.map} +0 -0
- /package/dist/esm/{chunk-PNZNNUMN.mjs.map → chunk-5PZACGPI.mjs.map} +0 -0
- /package/dist/esm/{chunk-ZGMFFK6Y.min.mjs.map → chunk-676VIABN.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-4MXYZS5R.mjs.map → chunk-7CP7ZE2O.mjs.map} +0 -0
- /package/dist/esm/{chunk-5VW3JAFR.min.mjs.map → chunk-7NF7PV6S.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-4JLDXF7T.min.mjs.map → chunk-7SQ5JQYR.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-JH6EBXY4.mjs.map → chunk-BWUFPMVG.mjs.map} +0 -0
- /package/dist/esm/{chunk-AKQBDYUO.mjs.map → chunk-HXFNN6RI.mjs.map} +0 -0
- /package/dist/esm/{chunk-PCAUXBAG.min.mjs.map → chunk-IRYCN6PI.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-Z2TZ3KR7.mjs.map → chunk-LKS5ZE45.mjs.map} +0 -0
- /package/dist/esm/{chunk-SGZNOYC3.min.mjs.map → chunk-MQXTTWPS.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-B5QQ32YY.min.mjs.map → chunk-P4PRHHIY.min.mjs.map} +0 -0
- /package/dist/esm/{chunk-TVTYDU2D.mjs.map → chunk-TSVHZZE4.mjs.map} +0 -0
- /package/dist/esm/{introspection-32BRYKYY.mjs.map → introspection-THKMXV5V.min.mjs.map} +0 -0
- /package/dist/esm/{introspection-A72WMWE3.min.mjs.map → introspection-YJF3QAUK.mjs.map} +0 -0
|
@@ -1408,6 +1408,7 @@ var Server = class {
|
|
|
1408
1408
|
#queue = [];
|
|
1409
1409
|
#routesByKey = /* @__PURE__ */ new Set();
|
|
1410
1410
|
#started = false;
|
|
1411
|
+
#beforeListenHandlers = [];
|
|
1411
1412
|
#notFoundHandler = null;
|
|
1412
1413
|
setup(httpServer, config) {
|
|
1413
1414
|
this.#httpServer = httpServer;
|
|
@@ -1463,6 +1464,11 @@ var Server = class {
|
|
|
1463
1464
|
this.#notFoundHandler = handler;
|
|
1464
1465
|
return this;
|
|
1465
1466
|
}
|
|
1467
|
+
onBeforeListen(handler) {
|
|
1468
|
+
if (this.#started) throw new EquippedError("Cannot add before-listen handler after server has started", {});
|
|
1469
|
+
this.#beforeListenHandlers.push(handler);
|
|
1470
|
+
return this;
|
|
1471
|
+
}
|
|
1466
1472
|
test() {
|
|
1467
1473
|
return (0, import_supertest.default)(this.#httpServer);
|
|
1468
1474
|
}
|
|
@@ -1496,6 +1502,7 @@ var Server = class {
|
|
|
1496
1502
|
});
|
|
1497
1503
|
return await this.handleResponse(res, response);
|
|
1498
1504
|
});
|
|
1505
|
+
for (const handler of this.#beforeListenHandlers) await handler({ httpServer: this.#httpServer, port: config.port });
|
|
1499
1506
|
const started = await this.startServer(config.port);
|
|
1500
1507
|
if (started) Instance.get().log.info(`${instance.id}(${app.name}) service listening on port ${config.port}`);
|
|
1501
1508
|
return started;
|
|
@@ -1647,6 +1654,7 @@ if (void 0) {
|
|
|
1647
1654
|
const testInstanceState = globalThis;
|
|
1648
1655
|
class TestServer extends Server {
|
|
1649
1656
|
handledResponse = null;
|
|
1657
|
+
startedPorts = [];
|
|
1650
1658
|
notFoundHandler = null;
|
|
1651
1659
|
constructor() {
|
|
1652
1660
|
super();
|
|
@@ -1691,7 +1699,8 @@ if (void 0) {
|
|
|
1691
1699
|
registerNotFoundHandler(cb) {
|
|
1692
1700
|
this.notFoundHandler = cb;
|
|
1693
1701
|
}
|
|
1694
|
-
async startServer() {
|
|
1702
|
+
async startServer(port) {
|
|
1703
|
+
this.startedPorts.push(port);
|
|
1695
1704
|
return true;
|
|
1696
1705
|
}
|
|
1697
1706
|
async dispatchNotFound(path) {
|
|
@@ -1702,6 +1711,43 @@ if (void 0) {
|
|
|
1702
1711
|
return { handledResponse: this.handledResponse, rawResponse };
|
|
1703
1712
|
}
|
|
1704
1713
|
}
|
|
1714
|
+
describe("Server before-listen handlers", () => {
|
|
1715
|
+
test("runs before-listen handlers before adapter listen in registration order", async () => {
|
|
1716
|
+
ensureTestInstance();
|
|
1717
|
+
const server = new TestServer();
|
|
1718
|
+
const calls = [];
|
|
1719
|
+
let receivedServer = null;
|
|
1720
|
+
server.onBeforeListen(({ httpServer, port }) => {
|
|
1721
|
+
calls.push(`first:${port}`);
|
|
1722
|
+
receivedServer = httpServer;
|
|
1723
|
+
expect(server.startedPorts).toEqual([]);
|
|
1724
|
+
}).onBeforeListen(({ httpServer, port }) => {
|
|
1725
|
+
calls.push(`second:${port}`);
|
|
1726
|
+
expect(httpServer).toBe(receivedServer);
|
|
1727
|
+
expect(server.startedPorts).toEqual([]);
|
|
1728
|
+
});
|
|
1729
|
+
await server.start();
|
|
1730
|
+
expect(calls).toEqual(["first:0", "second:0"]);
|
|
1731
|
+
expect(receivedServer).toBeInstanceOf(http.Server);
|
|
1732
|
+
expect(server.startedPorts).toEqual([0]);
|
|
1733
|
+
});
|
|
1734
|
+
test("rejects startup when a before-listen handler fails before adapter listen", async () => {
|
|
1735
|
+
ensureTestInstance();
|
|
1736
|
+
const server = new TestServer();
|
|
1737
|
+
server.onBeforeListen(async () => {
|
|
1738
|
+
throw new Error("before-listen failed");
|
|
1739
|
+
});
|
|
1740
|
+
await expect(server.start()).rejects.toThrow("before-listen failed");
|
|
1741
|
+
expect(server.startedPorts).toEqual([]);
|
|
1742
|
+
});
|
|
1743
|
+
test("rejects adding before-listen handlers after server startup", async () => {
|
|
1744
|
+
ensureTestInstance();
|
|
1745
|
+
const server = new TestServer();
|
|
1746
|
+
await server.start();
|
|
1747
|
+
expect(() => server.onBeforeListen(() => {
|
|
1748
|
+
})).toThrow("Cannot add before-listen handler after server has started");
|
|
1749
|
+
});
|
|
1750
|
+
});
|
|
1705
1751
|
describe("Server not-found handler", () => {
|
|
1706
1752
|
test("throws the default Equipped not-found error when no custom handler is set", async () => {
|
|
1707
1753
|
ensureTestInstance();
|