* feat(context): `c.routerName()`
* chore: denoify
* Enable to get router name via `app.routerName`. (#1110)
---------
Co-authored-by: Taku Amano <taku@taaas.jp>
* feat(reg-exp-router): Search by key of Object if `path` has no variables.
* feat(reg-exp-router): Returns an empty RegExp if node is not added.
* feat(reg-exp-router): Check ambiguous path for static.
* chore: fix typo in test case
* chore: denoify
* fix(reg-exp-router): Comparisons between middleware must be checked in both orientations.
* refactor(reg-exp-router): Simplify the conditions.
* chore: denoify
* fix(reg-exp-router): Copy middleware if the method of new middleware is METHOD_NAME_ALL.
* chore: denoify
* fix(reg-exp-router): Allows registering a star after a long prefix.
* fix(reg-exp-router): It now works even if a short GET is registered after a long ALL.
* chore: denoify
* feat(app): introduce `app.on(method, path, handler)`
* Refactoring of feat/on branche (#655)
* refactor(reg-exp-router): Use `includes` instead of `find` to check if an element is in an array.
* fix(static-router): Copy middleware from METHOD_NAME_ALL for new method.
* chore: denoify
Co-authored-by: Taku Amano <taku@taaas.jp>
* refactor(reg-exp-router): Add existence check instead of "ts-ignore".
* fix(reg-exp-router): Rebuild all matchers as "hasAmbiguous" if some methods are ambiguous.
* Run `yarn denoify`.