@h3ravel/router 1.11.4 → 1.12.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/dist/index.cjs CHANGED
@@ -248,21 +248,28 @@ var Router = class {
248
248
  */
249
249
  resolveHandler(handler, middleware = []) {
250
250
  return async (event) => {
251
- return new __h3ravel_core.Kernel(() => __h3ravel_shared.HttpContext.init({
252
- app: this.app,
253
- request: new __h3ravel_http.Request(event, this.app),
254
- response: new __h3ravel_http.Response(event, this.app)
255
- }), middleware).handle(event, (ctx) => Promise.resolve(handler(ctx)));
251
+ this.app.context ??= async (event$1) => {
252
+ if (event$1._h3ravelContext) return event$1._h3ravelContext;
253
+ __h3ravel_http.Request.enableHttpMethodParameterOverride();
254
+ const ctx = __h3ravel_shared.HttpContext.init({
255
+ app: this.app,
256
+ request: await __h3ravel_http.Request.create(event$1, this.app),
257
+ response: new __h3ravel_http.Response(event$1, this.app)
258
+ });
259
+ event$1._h3ravelContext = ctx;
260
+ return ctx;
261
+ };
262
+ return new __h3ravel_core.Kernel(this.app.context, middleware).handle(event, (ctx) => Promise.resolve(handler(ctx)));
256
263
  };
257
264
  }
258
265
  /**
259
266
  * Add a route to the stack
260
267
  *
261
- * @param method
262
- * @param path
263
- * @param handler
264
- * @param name
265
- * @param middleware
268
+ * @param method
269
+ * @param path
270
+ * @param handler
271
+ * @param name
272
+ * @param middleware
266
273
  */
267
274
  addRoute(method, path$1, handler, name, middleware = [], signature = ["", ""]) {
268
275
  /**
package/dist/index.js CHANGED
@@ -215,21 +215,28 @@ var Router = class {
215
215
  */
216
216
  resolveHandler(handler, middleware = []) {
217
217
  return async (event) => {
218
- return new Kernel(() => HttpContext.init({
219
- app: this.app,
220
- request: new Request(event, this.app),
221
- response: new Response(event, this.app)
222
- }), middleware).handle(event, (ctx) => Promise.resolve(handler(ctx)));
218
+ this.app.context ??= async (event$1) => {
219
+ if (event$1._h3ravelContext) return event$1._h3ravelContext;
220
+ Request.enableHttpMethodParameterOverride();
221
+ const ctx = HttpContext.init({
222
+ app: this.app,
223
+ request: await Request.create(event$1, this.app),
224
+ response: new Response(event$1, this.app)
225
+ });
226
+ event$1._h3ravelContext = ctx;
227
+ return ctx;
228
+ };
229
+ return new Kernel(this.app.context, middleware).handle(event, (ctx) => Promise.resolve(handler(ctx)));
223
230
  };
224
231
  }
225
232
  /**
226
233
  * Add a route to the stack
227
234
  *
228
- * @param method
229
- * @param path
230
- * @param handler
231
- * @param name
232
- * @param middleware
235
+ * @param method
236
+ * @param path
237
+ * @param handler
238
+ * @param name
239
+ * @param middleware
233
240
  */
234
241
  addRoute(method, path$1, handler, name, middleware = [], signature = ["", ""]) {
235
242
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@h3ravel/router",
3
- "version": "1.11.4",
3
+ "version": "1.12.0",
4
4
  "description": "Route facade, decorators and controller system for H3ravel.",
5
5
  "h3ravel": {
6
6
  "providers": [
@@ -42,14 +42,14 @@
42
42
  "laravel"
43
43
  ],
44
44
  "dependencies": {
45
- "@h3ravel/musket": "^0.1.8",
46
- "h3": "2.0.0-beta.4",
45
+ "@h3ravel/musket": "^0.3.1",
46
+ "h3": "2.0.1-rc.5",
47
47
  "reflect-metadata": "^0.2.2",
48
- "@h3ravel/http": "^11.3.4",
49
- "@h3ravel/database": "^11.4.2",
50
- "@h3ravel/core": "^1.17.0",
51
- "@h3ravel/support": "^0.14.2",
52
- "@h3ravel/shared": "^0.22.3"
48
+ "@h3ravel/core": "^1.20.0",
49
+ "@h3ravel/database": "^11.4.4",
50
+ "@h3ravel/http": "^11.5.0",
51
+ "@h3ravel/shared": "^0.25.0",
52
+ "@h3ravel/support": "^0.14.4"
53
53
  },
54
54
  "scripts": {
55
55
  "barrel": "barrelsby --directory src --delete --singleQuotes",