UNPKG

hono

Version:

Web framework built on Web Standards

28 lines (27 loc) 749 B
// src/router/reg-exp-router/matcher.ts import { METHOD_NAME_ALL } from "../../router.js"; var emptyParam = []; var buildAllMatchersKey = Symbol("buildAllMatchers"); function match(method, path) { const matchers = this[buildAllMatchersKey](); const match2 = (method2, path2) => { const matcher = matchers[method2] || matchers[METHOD_NAME_ALL]; const staticMatch = matcher[2][path2]; if (staticMatch) { return staticMatch; } const match3 = path2.match(matcher[0]); if (!match3) { return [[], emptyParam]; } const index = match3.indexOf("", 1); return [matcher[1][index], match3]; }; this.match = match2; return match2(method, path); } export { buildAllMatchersKey, emptyParam, match };