Pārlūkot izejas kodu

ref: add .js to import paths

Sv443 4 mēneši atpakaļ
vecāks
revīzija
8ca59511ab
9 mainītis faili ar 29 papildinājumiem un 22 dzēšanām
  1. 1 1
      src/filter.ts
  2. 2 2
      src/index.ts
  3. 2 2
      src/routes/album.ts
  4. 11 4
      src/routes/index.ts
  5. 2 2
      src/routes/search.ts
  6. 2 2
      src/routes/translations.ts
  7. 5 5
      src/server.ts
  8. 3 3
      src/songData.ts
  9. 1 1
      src/utils.ts

+ 1 - 1
src/filter.ts

@@ -1,4 +1,4 @@
-import type { MetaSearchHit, ScoredResults, SearchFilterArgs } from "./types";
+import type { MetaSearchHit, ScoredResults, SearchFilterArgs } from "./types.js";
 
 export function filterSearchResults(_args: SearchFilterArgs, _results: MetaSearchHit[]): MetaSearchHit[] {
   const scored: ScoredResults<MetaSearchHit>[] = [];

+ 2 - 2
src/index.ts

@@ -1,7 +1,7 @@
 import "dotenv/config";
 
-import * as server from "./server";
-import { error } from "./error";
+import * as server from "./server.js";
+import { error } from "./error.js";
 
 const { env } = process;
 

+ 2 - 2
src/routes/album.ts

@@ -1,6 +1,6 @@
 import { Router } from "express";
-import { paramValid, respond } from "../utils";
-import { getAlbum } from "../songData";
+import { paramValid, respond } from "../utils.js";
+import { getAlbum } from "../songData.js";
 
 export function initAlbumRoutes(router: Router) {
   //#region /album

+ 11 - 4
src/routes/index.ts

@@ -1,9 +1,11 @@
-import { Application, Router } from "express";
+import { resolve } from "node:path";
+import express, { Application, Router } from "express";
 import packageJson from "../../package.json";
 
-import { initSearchRoutes } from "./search";
-import { initTranslationsRoutes } from "./translations";
-import { initAlbumRoutes } from "./album";
+import { initSearchRoutes } from "./search.js";
+import { initTranslationsRoutes } from "./translations.js";
+import { initAlbumRoutes } from "./album.js";
+import { fileURLToPath } from "node:url";
 
 const routeFuncs: ((router: Router) => unknown)[] = [
   initSearchRoutes,
@@ -20,5 +22,10 @@ export function initRouter(app: Application) {
   // redirect to GitHub page
   router.get("/", (_req, res) => res.redirect(packageJson.homepage));
 
+  // redirect to docs page
+  router.get("/docs", (_req, res) => res.redirect("/docs/"));
+
+  // host docs files
+  router.use("/docs", express.static(resolve(fileURLToPath(import.meta.url), "../../www/docs/.vuepress/dist")));
   app.use("/", router);
 }

+ 2 - 2
src/routes/search.ts

@@ -1,6 +1,6 @@
 import { Router } from "express";
-import { paramValid, respond } from "../utils";
-import { getMeta } from "../songData";
+import { paramValid, respond } from "../utils.js";
+import { getMeta } from "../songData.js";
 
 export function initSearchRoutes(router: Router) {
   //#region /search

+ 2 - 2
src/routes/translations.ts

@@ -1,6 +1,6 @@
 import { Router } from "express";
-import { paramValid, respond } from "../utils";
-import { getTranslations } from "../songData";
+import { paramValid, respond } from "../utils.js";
+import { getTranslations } from "../songData.js";
 
 export function initTranslationsRoutes(router: Router) {
   //#region /translations

+ 5 - 5
src/server.ts

@@ -7,11 +7,11 @@ import k from "kleur";
 import cors from "cors";
 import { getClientIp } from "request-ip";
 
-import packageJson from "../package.json";
-import { error } from "./error";
-import { initRouter } from "./routes";
-import { hashStr, respond } from "./utils";
-import { rateLimitOptions } from "./constants";
+import packageJson from "../package.json" with { type: "json" };
+import { error } from "./error.js";
+import { initRouter } from "./routes/index.js";
+import { hashStr, respond } from "./utils.js";
+import { rateLimitOptions } from "./constants.js";
 
 const { env } = process;
 const app = express();

+ 3 - 3
src/songData.ts

@@ -1,6 +1,6 @@
-import { axios, baseAxiosOpts } from "./axios";
-import { charReplacements } from "./constants";
-import type { Album, ApiSearchResult, ApiSongResult, GetMetaArgs, GetMetaResult, MetaSearchHit, SongTranslation } from "./types";
+import { axios, baseAxiosOpts } from "./axios.js";
+import { charReplacements } from "./constants.js";
+import type { Album, ApiSearchResult, ApiSongResult, GetMetaArgs, GetMetaResult, MetaSearchHit, SongTranslation } from "./types.js";
 
 /**
  * Returns meta information about the top results of a search using the genius API

+ 1 - 1
src/utils.ts

@@ -2,7 +2,7 @@ import { createHash } from "node:crypto";
 import { Response } from "express";
 import { Stringifiable, byteLength } from "svcorelib";
 import { parse as jsonToXml } from "js2xmlparser";
-import { ResponseType } from "./types";
+import { ResponseType } from "./types.js";
 
 /** Checks if the value of a passed URL parameter is a string with length > 0 */
 export function paramValid(val: unknown): val is string {