mirror of
https://github.com/codex-team/codex.docs.git
synced 2025-07-25 16:19:44 +02:00
Merge branch 'main' into feature/backend-search
This commit is contained in:
commit
9fa3c90c44
38 changed files with 505 additions and 288 deletions
|
@ -1,17 +1,24 @@
|
|||
import express, { NextFunction, Request, Response } from 'express';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
import cookieParser from 'cookie-parser';
|
||||
import morgan from 'morgan';
|
||||
import rcParser from './utils/rcparser';
|
||||
import routes from './routes';
|
||||
import HttpException from './exceptions/httpException';
|
||||
import rcParser from './utils/rcparser.js';
|
||||
import routes from './routes/index.js';
|
||||
import HttpException from './exceptions/httpException.js';
|
||||
import * as dotenv from 'dotenv';
|
||||
import config from 'config';
|
||||
import HawkCatcher from '@hawk.so/nodejs';
|
||||
import { default as HawkCatcher } from '@hawk.so/nodejs';
|
||||
import os from 'os';
|
||||
import appConfig from 'config';
|
||||
import { downloadFavicon, FaviconData } from './utils/downloadFavicon';
|
||||
import { downloadFavicon, FaviconData } from './utils/downloadFavicon.js';
|
||||
|
||||
/**
|
||||
* The __dirname CommonJS variables are not available in ES modules.
|
||||
* https://nodejs.org/api/esm.html#no-__filename-or-__dirname
|
||||
*/
|
||||
// eslint-disable-next-line @typescript-eslint/naming-convention
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
||||
|
||||
dotenv.config();
|
||||
const app = express();
|
||||
|
@ -34,7 +41,7 @@ if (process.env.HAWK_TOKEN_CLIENT) {
|
|||
// view engine setup
|
||||
app.set('views', path.join(__dirname, './', 'views'));
|
||||
app.set('view engine', 'twig');
|
||||
require('./utils/twig');
|
||||
import('./utils/twig.js');
|
||||
|
||||
const downloadedFaviconFolder = os.tmpdir();
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import Alias from '../models/alias';
|
||||
import Alias from '../models/alias.js';
|
||||
|
||||
/**
|
||||
* @class Aliases
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import Page, { PageData } from '../models/page';
|
||||
import Alias from '../models/alias';
|
||||
import PagesOrder from './pagesOrder';
|
||||
import PageOrder from '../models/pageOrder';
|
||||
import HttpException from '../exceptions/httpException';
|
||||
import PagesFlatArray from '../models/pagesFlatArray';
|
||||
import Page, { PageData } from '../models/page.js';
|
||||
import Alias from '../models/alias.js';
|
||||
import PagesOrder from './pagesOrder.js';
|
||||
import PageOrder from '../models/pageOrder.js';
|
||||
import HttpException from '../exceptions/httpException.js';
|
||||
import PagesFlatArray from '../models/pagesFlatArray.js';
|
||||
|
||||
type PageDataFields = keyof PageData;
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import PageOrder from '../models/pageOrder';
|
||||
import Page from '../models/page';
|
||||
import PagesFlatArray from '../models/pagesFlatArray';
|
||||
import PageOrder from '../models/pageOrder.js';
|
||||
import Page from '../models/page.js';
|
||||
import PagesFlatArray from '../models/pagesFlatArray.js';
|
||||
|
||||
/**
|
||||
* @class PagesOrder
|
||||
|
|
|
@ -3,9 +3,9 @@ import fetch from 'node-fetch';
|
|||
import fs from 'fs';
|
||||
import nodePath from 'path';
|
||||
import config from 'config';
|
||||
import File, { FileData } from '../models/file';
|
||||
import crypto from '../utils/crypto';
|
||||
import deepMerge from '../utils/objects';
|
||||
import File, { FileData } from '../models/file.js';
|
||||
import crypto from '../utils/crypto.js';
|
||||
import deepMerge from '../utils/objects.js';
|
||||
|
||||
const random16 = crypto.random16;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import crypto from '../utils/crypto';
|
||||
import database from '../utils/database/index';
|
||||
import crypto from '../utils/crypto.js';
|
||||
import database from '../utils/database/index.js';
|
||||
|
||||
const binaryMD5 = crypto.binaryMD5;
|
||||
const aliasesDb = database['aliases'];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import database from '../utils/database/index';
|
||||
import database from '../utils/database/index.js';
|
||||
|
||||
const filesDb = database['files'];
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import urlify from '../utils/urlify';
|
||||
import database from '../utils/database/index';
|
||||
import urlify from '../utils/urlify.js';
|
||||
import database from '../utils/database/index.js';
|
||||
|
||||
const pagesDb = database['pages'];
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import database from '../utils/database/index';
|
||||
import database from '../utils/database/index.js';
|
||||
|
||||
const db = database['pagesOrder'];
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import Page from './page';
|
||||
import PageOrder from './pageOrder';
|
||||
import Page from './page.js';
|
||||
import PageOrder from './pageOrder.js';
|
||||
import NodeCache from 'node-cache';
|
||||
|
||||
// Create cache for flat array
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import express, { Request, Response } from 'express';
|
||||
import Aliases from '../controllers/aliases';
|
||||
import Pages from '../controllers/pages';
|
||||
import Alias from '../models/alias';
|
||||
import verifyToken from './middlewares/token';
|
||||
import PagesFlatArray from '../models/pagesFlatArray';
|
||||
import Aliases from '../controllers/aliases.js';
|
||||
import Pages from '../controllers/pages.js';
|
||||
import Alias from '../models/alias.js';
|
||||
import verifyToken from './middlewares/token.js';
|
||||
import PagesFlatArray from '../models/pagesFlatArray.js';
|
||||
|
||||
const router = express.Router();
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import express from 'express';
|
||||
|
||||
import pagesAPI from './pages';
|
||||
import transportAPI from './transport';
|
||||
import linksAPI from './links';
|
||||
import searchAPI from './search';
|
||||
import pagesAPI from './pages.js';
|
||||
import transportAPI from './transport.js';
|
||||
import linksAPI from './links.js';
|
||||
import searchAPI from './search.js';
|
||||
|
||||
const router = express.Router();
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import express, { Request, Response } from 'express';
|
||||
import multerFunc from 'multer';
|
||||
import Pages from '../../controllers/pages';
|
||||
import PagesOrder from '../../controllers/pagesOrder';
|
||||
import Pages from '../../controllers/pages.js';
|
||||
import PagesOrder from '../../controllers/pagesOrder.js';
|
||||
|
||||
const router = express.Router();
|
||||
const multer = multerFunc();
|
||||
|
|
|
@ -3,8 +3,8 @@ import multer, { StorageEngine } from 'multer';
|
|||
import mime from 'mime';
|
||||
import mkdirp from 'mkdirp';
|
||||
import config from 'config';
|
||||
import Transport from '../../controllers/transport';
|
||||
import { random16 } from '../../utils/crypto';
|
||||
import Transport from '../../controllers/transport.js';
|
||||
import { random16 } from '../../utils/crypto.js';
|
||||
|
||||
const router = Router();
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import express, { Request, Response } from 'express';
|
||||
import verifyToken from './middlewares/token';
|
||||
import verifyToken from './middlewares/token.js';
|
||||
|
||||
const router = express.Router();
|
||||
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
import express from 'express';
|
||||
import home from './home';
|
||||
import pages from './pages';
|
||||
import auth from './auth';
|
||||
import aliases from './aliases';
|
||||
import api from './api';
|
||||
import pagesMiddleware from './middlewares/pages';
|
||||
import home from './home.js';
|
||||
import pages from './pages.js';
|
||||
import auth from './auth.js';
|
||||
import aliases from './aliases.js';
|
||||
import api from './api/index.js';
|
||||
import pagesMiddleware from './middlewares/pages.js';
|
||||
|
||||
const router = express.Router();
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import { NextFunction, Request, Response } from 'express';
|
||||
import Pages from '../../controllers/pages';
|
||||
import PagesOrder from '../../controllers/pagesOrder';
|
||||
import Page from '../../models/page';
|
||||
import asyncMiddleware from '../../utils/asyncMiddleware';
|
||||
import PageOrder from '../../models/pageOrder';
|
||||
import Pages from '../../controllers/pages.js';
|
||||
import PagesOrder from '../../controllers/pagesOrder.js';
|
||||
import Page from '../../models/page.js';
|
||||
import asyncMiddleware from '../../utils/asyncMiddleware.js';
|
||||
import PageOrder from '../../models/pageOrder.js';
|
||||
|
||||
/**
|
||||
* Process one-level pages list to parent-children list
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import express, { NextFunction, Request, Response } from 'express';
|
||||
import Pages from '../controllers/pages';
|
||||
import PagesOrder from '../controllers/pagesOrder';
|
||||
import verifyToken from './middlewares/token';
|
||||
import allowEdit from './middlewares/locals';
|
||||
import PagesFlatArray from '../models/pagesFlatArray';
|
||||
import Pages from '../controllers/pages.js';
|
||||
import PagesOrder from '../controllers/pagesOrder.js';
|
||||
import verifyToken from './middlewares/token.js';
|
||||
import allowEdit from './middlewares/locals.js';
|
||||
import PagesFlatArray from '../models/pagesFlatArray.js';
|
||||
|
||||
const router = express.Router();
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import Datastore from 'nedb';
|
||||
import { AliasData } from '../../models/alias';
|
||||
import { FileData } from '../../models/file';
|
||||
import { PageData } from '../../models/page';
|
||||
import { PageOrderData } from '../../models/pageOrder';
|
||||
import initDb from './initDb';
|
||||
import { AliasData } from '../../models/alias.js';
|
||||
import { FileData } from '../../models/file.js';
|
||||
import { PageData } from '../../models/page.js';
|
||||
import { PageOrderData } from '../../models/pageOrder.js';
|
||||
import initDb from './initDb.js';
|
||||
|
||||
/**
|
||||
* @typedef Options - optional params
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import path from 'path';
|
||||
import fs from 'fs';
|
||||
import fetch from 'node-fetch';
|
||||
import fetch, { RequestInit } from 'node-fetch';
|
||||
|
||||
/**
|
||||
* Uploaded favicon data
|
||||
|
@ -61,7 +61,7 @@ export async function downloadFavicon(destination: string, faviconFolder: string
|
|||
}, 5000);
|
||||
|
||||
// Make get request to url
|
||||
const res = await fetch(destination, { signal: controller.signal });
|
||||
const res = await fetch(destination, { signal: controller.signal as RequestInit['signal'] });
|
||||
// Get buffer data from response
|
||||
const fileData = await res.buffer();
|
||||
|
||||
|
|
|
@ -1,6 +1,14 @@
|
|||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
import config from 'config';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
/**
|
||||
* The __dirname CommonJS variables are not available in ES modules.
|
||||
* https://nodejs.org/api/esm.html#no-__filename-or-__dirname
|
||||
*/
|
||||
// eslint-disable-next-line @typescript-eslint/naming-convention
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
||||
|
||||
const rcPath = path.resolve(__dirname, '../../../', config.get('rcFile') || './.codexdocsrc');
|
||||
|
||||
|
|
|
@ -3,8 +3,16 @@
|
|||
*/
|
||||
import twig from 'twig';
|
||||
import fs from 'fs';
|
||||
import urlify from './urlify';
|
||||
import urlify from './urlify.js';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
/**
|
||||
* The __dirname CommonJS variables are not available in ES modules.
|
||||
* https://nodejs.org/api/esm.html#no-__filename-or-__dirname
|
||||
*/
|
||||
// eslint-disable-next-line @typescript-eslint/naming-convention
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
||||
|
||||
export default (function () {
|
||||
'use strict';
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import translateString from './translation';
|
||||
import translateString from './translation.js';
|
||||
|
||||
/**
|
||||
* Convert text to URL-like string
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue