Aktueller Stand
This commit is contained in:
28
backend/node_modules/hono/dist/cjs/router/trie-router/index.js
generated
vendored
Normal file
28
backend/node_modules/hono/dist/cjs/router/trie-router/index.js
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
"use strict";
|
||||
var __defProp = Object.defineProperty;
|
||||
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
||||
var __getOwnPropNames = Object.getOwnPropertyNames;
|
||||
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
||||
var __export = (target, all) => {
|
||||
for (var name in all)
|
||||
__defProp(target, name, { get: all[name], enumerable: true });
|
||||
};
|
||||
var __copyProps = (to, from, except, desc) => {
|
||||
if (from && typeof from === "object" || typeof from === "function") {
|
||||
for (let key of __getOwnPropNames(from))
|
||||
if (!__hasOwnProp.call(to, key) && key !== except)
|
||||
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
||||
}
|
||||
return to;
|
||||
};
|
||||
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
||||
var trie_router_exports = {};
|
||||
__export(trie_router_exports, {
|
||||
TrieRouter: () => import_router.TrieRouter
|
||||
});
|
||||
module.exports = __toCommonJS(trie_router_exports);
|
||||
var import_router = require("./router");
|
||||
// Annotate the CommonJS export names for ESM import in node:
|
||||
0 && (module.exports = {
|
||||
TrieRouter
|
||||
});
|
||||
185
backend/node_modules/hono/dist/cjs/router/trie-router/node.js
generated
vendored
Normal file
185
backend/node_modules/hono/dist/cjs/router/trie-router/node.js
generated
vendored
Normal file
@@ -0,0 +1,185 @@
|
||||
"use strict";
|
||||
var __defProp = Object.defineProperty;
|
||||
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
||||
var __getOwnPropNames = Object.getOwnPropertyNames;
|
||||
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
||||
var __export = (target, all) => {
|
||||
for (var name in all)
|
||||
__defProp(target, name, { get: all[name], enumerable: true });
|
||||
};
|
||||
var __copyProps = (to, from, except, desc) => {
|
||||
if (from && typeof from === "object" || typeof from === "function") {
|
||||
for (let key of __getOwnPropNames(from))
|
||||
if (!__hasOwnProp.call(to, key) && key !== except)
|
||||
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
||||
}
|
||||
return to;
|
||||
};
|
||||
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
||||
var node_exports = {};
|
||||
__export(node_exports, {
|
||||
Node: () => Node
|
||||
});
|
||||
module.exports = __toCommonJS(node_exports);
|
||||
var import_router = require("../../router");
|
||||
var import_url = require("../../utils/url");
|
||||
const emptyParams = /* @__PURE__ */ Object.create(null);
|
||||
class Node {
|
||||
#methods;
|
||||
#children;
|
||||
#patterns;
|
||||
#order = 0;
|
||||
#params = emptyParams;
|
||||
constructor(method, handler, children) {
|
||||
this.#children = children || /* @__PURE__ */ Object.create(null);
|
||||
this.#methods = [];
|
||||
if (method && handler) {
|
||||
const m = /* @__PURE__ */ Object.create(null);
|
||||
m[method] = { handler, possibleKeys: [], score: 0 };
|
||||
this.#methods = [m];
|
||||
}
|
||||
this.#patterns = [];
|
||||
}
|
||||
insert(method, path, handler) {
|
||||
this.#order = ++this.#order;
|
||||
let curNode = this;
|
||||
const parts = (0, import_url.splitRoutingPath)(path);
|
||||
const possibleKeys = [];
|
||||
for (let i = 0, len = parts.length; i < len; i++) {
|
||||
const p = parts[i];
|
||||
const nextP = parts[i + 1];
|
||||
const pattern = (0, import_url.getPattern)(p, nextP);
|
||||
const key = Array.isArray(pattern) ? pattern[0] : p;
|
||||
if (key in curNode.#children) {
|
||||
curNode = curNode.#children[key];
|
||||
if (pattern) {
|
||||
possibleKeys.push(pattern[1]);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
curNode.#children[key] = new Node();
|
||||
if (pattern) {
|
||||
curNode.#patterns.push(pattern);
|
||||
possibleKeys.push(pattern[1]);
|
||||
}
|
||||
curNode = curNode.#children[key];
|
||||
}
|
||||
curNode.#methods.push({
|
||||
[method]: {
|
||||
handler,
|
||||
possibleKeys: possibleKeys.filter((v, i, a) => a.indexOf(v) === i),
|
||||
score: this.#order
|
||||
}
|
||||
});
|
||||
return curNode;
|
||||
}
|
||||
#getHandlerSets(node, method, nodeParams, params) {
|
||||
const handlerSets = [];
|
||||
for (let i = 0, len = node.#methods.length; i < len; i++) {
|
||||
const m = node.#methods[i];
|
||||
const handlerSet = m[method] || m[import_router.METHOD_NAME_ALL];
|
||||
const processedSet = {};
|
||||
if (handlerSet !== void 0) {
|
||||
handlerSet.params = /* @__PURE__ */ Object.create(null);
|
||||
handlerSets.push(handlerSet);
|
||||
if (nodeParams !== emptyParams || params && params !== emptyParams) {
|
||||
for (let i2 = 0, len2 = handlerSet.possibleKeys.length; i2 < len2; i2++) {
|
||||
const key = handlerSet.possibleKeys[i2];
|
||||
const processed = processedSet[handlerSet.score];
|
||||
handlerSet.params[key] = params?.[key] && !processed ? params[key] : nodeParams[key] ?? params?.[key];
|
||||
processedSet[handlerSet.score] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return handlerSets;
|
||||
}
|
||||
search(method, path) {
|
||||
const handlerSets = [];
|
||||
this.#params = emptyParams;
|
||||
const curNode = this;
|
||||
let curNodes = [curNode];
|
||||
const parts = (0, import_url.splitPath)(path);
|
||||
const curNodesQueue = [];
|
||||
for (let i = 0, len = parts.length; i < len; i++) {
|
||||
const part = parts[i];
|
||||
const isLast = i === len - 1;
|
||||
const tempNodes = [];
|
||||
for (let j = 0, len2 = curNodes.length; j < len2; j++) {
|
||||
const node = curNodes[j];
|
||||
const nextNode = node.#children[part];
|
||||
if (nextNode) {
|
||||
nextNode.#params = node.#params;
|
||||
if (isLast) {
|
||||
if (nextNode.#children["*"]) {
|
||||
handlerSets.push(
|
||||
...this.#getHandlerSets(nextNode.#children["*"], method, node.#params)
|
||||
);
|
||||
}
|
||||
handlerSets.push(...this.#getHandlerSets(nextNode, method, node.#params));
|
||||
} else {
|
||||
tempNodes.push(nextNode);
|
||||
}
|
||||
}
|
||||
for (let k = 0, len3 = node.#patterns.length; k < len3; k++) {
|
||||
const pattern = node.#patterns[k];
|
||||
const params = node.#params === emptyParams ? {} : { ...node.#params };
|
||||
if (pattern === "*") {
|
||||
const astNode = node.#children["*"];
|
||||
if (astNode) {
|
||||
handlerSets.push(...this.#getHandlerSets(astNode, method, node.#params));
|
||||
astNode.#params = params;
|
||||
tempNodes.push(astNode);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
const [key, name, matcher] = pattern;
|
||||
if (!part && !(matcher instanceof RegExp)) {
|
||||
continue;
|
||||
}
|
||||
const child = node.#children[key];
|
||||
const restPathString = parts.slice(i).join("/");
|
||||
if (matcher instanceof RegExp) {
|
||||
const m = matcher.exec(restPathString);
|
||||
if (m) {
|
||||
params[name] = m[0];
|
||||
handlerSets.push(...this.#getHandlerSets(child, method, node.#params, params));
|
||||
if (Object.keys(child.#children).length) {
|
||||
child.#params = params;
|
||||
const componentCount = m[0].match(/\//)?.length ?? 0;
|
||||
const targetCurNodes = curNodesQueue[componentCount] ||= [];
|
||||
targetCurNodes.push(child);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (matcher === true || matcher.test(part)) {
|
||||
params[name] = part;
|
||||
if (isLast) {
|
||||
handlerSets.push(...this.#getHandlerSets(child, method, params, node.#params));
|
||||
if (child.#children["*"]) {
|
||||
handlerSets.push(
|
||||
...this.#getHandlerSets(child.#children["*"], method, params, node.#params)
|
||||
);
|
||||
}
|
||||
} else {
|
||||
child.#params = params;
|
||||
tempNodes.push(child);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
curNodes = tempNodes.concat(curNodesQueue.shift() ?? []);
|
||||
}
|
||||
if (handlerSets.length > 1) {
|
||||
handlerSets.sort((a, b) => {
|
||||
return a.score - b.score;
|
||||
});
|
||||
}
|
||||
return [handlerSets.map(({ handler, params }) => [handler, params])];
|
||||
}
|
||||
}
|
||||
// Annotate the CommonJS export names for ESM import in node:
|
||||
0 && (module.exports = {
|
||||
Node
|
||||
});
|
||||
49
backend/node_modules/hono/dist/cjs/router/trie-router/router.js
generated
vendored
Normal file
49
backend/node_modules/hono/dist/cjs/router/trie-router/router.js
generated
vendored
Normal file
@@ -0,0 +1,49 @@
|
||||
"use strict";
|
||||
var __defProp = Object.defineProperty;
|
||||
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
||||
var __getOwnPropNames = Object.getOwnPropertyNames;
|
||||
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
||||
var __export = (target, all) => {
|
||||
for (var name in all)
|
||||
__defProp(target, name, { get: all[name], enumerable: true });
|
||||
};
|
||||
var __copyProps = (to, from, except, desc) => {
|
||||
if (from && typeof from === "object" || typeof from === "function") {
|
||||
for (let key of __getOwnPropNames(from))
|
||||
if (!__hasOwnProp.call(to, key) && key !== except)
|
||||
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
||||
}
|
||||
return to;
|
||||
};
|
||||
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
||||
var router_exports = {};
|
||||
__export(router_exports, {
|
||||
TrieRouter: () => TrieRouter
|
||||
});
|
||||
module.exports = __toCommonJS(router_exports);
|
||||
var import_url = require("../../utils/url");
|
||||
var import_node = require("./node");
|
||||
class TrieRouter {
|
||||
name = "TrieRouter";
|
||||
#node;
|
||||
constructor() {
|
||||
this.#node = new import_node.Node();
|
||||
}
|
||||
add(method, path, handler) {
|
||||
const results = (0, import_url.checkOptionalParameter)(path);
|
||||
if (results) {
|
||||
for (let i = 0, len = results.length; i < len; i++) {
|
||||
this.#node.insert(method, results[i], handler);
|
||||
}
|
||||
return;
|
||||
}
|
||||
this.#node.insert(method, path, handler);
|
||||
}
|
||||
match(method, path) {
|
||||
return this.#node.search(method, path);
|
||||
}
|
||||
}
|
||||
// Annotate the CommonJS export names for ESM import in node:
|
||||
0 && (module.exports = {
|
||||
TrieRouter
|
||||
});
|
||||
Reference in New Issue
Block a user