(file)
| 2648 | } |
| 2649 | |
| 2650 | function buildIconUrl(file) { |
| 2651 | // Important: encode spaces and other characters safely, without breaking subpaths |
| 2652 | const raw = String(file || "").replace(/\\/g, "/").replace(/^\/+/, ""); |
| 2653 | const encoded = raw |
| 2654 | .split("/") |
| 2655 | .filter(Boolean) |
| 2656 | .map((seg) => encodeURIComponent(seg)) |
| 2657 | .join("/"); |
| 2658 | return `icons/${encoded}`; |
| 2659 | } |
| 2660 | |
| 2661 | function inferTagsFromName(name) { |
| 2662 | return String(name || "") |
no outgoing calls
no test coverage detected