From bd71a57b7afb4c49b8dda730b776bb30cceee102 Mon Sep 17 00:00:00 2001 From: Richie Bendall Date: Sat, 22 May 2021 22:43:22 +1200 Subject: [PATCH] Refactor Signed-off-by: Richie Bendall --- {middleware => lib}/load-options.js | 22 ++--- lib/load-user.js | 26 ++++++ middleware/load-user.js | 33 ------- package.json | 35 ++++++-- routes/get.js | 56 ++++++++---- routes/post.js | 53 ++++++----- routes/utils.js | 2 +- server.js | 43 +++++---- test.js | 131 ++++++++++++++-------------- yarn.lock | Bin 194698 -> 286052 bytes 10 files changed, 223 insertions(+), 178 deletions(-) rename {middleware => lib}/load-options.js (54%) create mode 100644 lib/load-user.js delete mode 100644 middleware/load-user.js diff --git a/middleware/load-options.js b/lib/load-options.js similarity index 54% rename from middleware/load-options.js rename to lib/load-options.js index e72d7ad7..f3e43984 100644 --- a/middleware/load-options.js +++ b/lib/load-options.js @@ -11,10 +11,10 @@ const getUrlParts = url => { return url.slice(1).split('/') } -module.exports = (request, response, next) => { - const urlParts = getUrlParts(request.url) +const loadOptions = url => { + const urlParts = getUrlParts(url) - response.locals.options = { + const options = { format: 'html', startYear: null, endYear: currentYear @@ -23,21 +23,23 @@ module.exports = (request, response, next) => { for (const urlPart of urlParts) { if (yearRegex.test(urlPart)) { if (urlPart.startsWith('@')) { - response.locals.options.pinnedYear = Number.parseInt(urlPart.slice(1)) + options.pinnedYear = Number.parseInt(urlPart.slice(1), 10) } else { - response.locals.options.startYear = Number.parseInt(urlPart) + options.startYear = Number.parseInt(urlPart, 10) } } else if (yearRangeRegex.test(urlPart)) { const [startYear, endYear] = urlPart.match(yearRangeRegex).slice(1) - response.locals.options.startYear = Number.parseInt(startYear) - response.locals.options.endYear = Number.parseInt(endYear) + options.startYear = Number.parseInt(startYear, 10) + options.endYear = Number.parseInt(endYear, 10) } else if (urlPart.startsWith('license')) { - response.locals.options.format = urlPart.split('.')[1].trim() + options.format = urlPart.split('.')[1].trim() } else if (urlPart.startsWith('+')) { - response.locals.options.license = urlPart.slice(1).toUpperCase() + options.license = urlPart.slice(1).toUpperCase() } } - next() + return options } + +export default loadOptions diff --git a/lib/load-user.js b/lib/load-user.js new file mode 100644 index 00000000..acb3fc7b --- /dev/null +++ b/lib/load-user.js @@ -0,0 +1,26 @@ +import {fileURLToPath} from 'node:url' +import path, {dirname} from 'node:path' +import loadJsonFile from 'load-json-file' + +const directoryName = dirname(fileURLToPath(import.meta.url)) + +const loadUser = async hostname => { + const [id] = hostname.split('.') + + const user = { + copyright: '' // Fallback + } + + try { + return { + ...user, + ...await loadJsonFile(path.join(directoryName, '..', 'users', `${id}.json`)) + } + } catch (error) { + if (error.code !== 'ENOENT') { + throw error + } + } +} + +export default loadUser diff --git a/middleware/load-user.js b/middleware/load-user.js deleted file mode 100644 index 9d602abb..00000000 --- a/middleware/load-user.js +++ /dev/null @@ -1,33 +0,0 @@ -const path = require('path') -const loadJsonFile = require('load-json-file') - -module.exports = async (request, response, next) => { - const id = request.hostname.split('.')[0] - - if (request.method.toUpperCase() !== 'GET') { - return next() - } - - // Otherwise load up the user json file - response.locals.user = { - copyright: '' - } - - try { - response.locals.user = { - ...response.locals.user, - ...await loadJsonFile(path.join(__dirname, '..', 'users', `${id}.json`)) - } - } catch ({ code, message }) { - if (code !== 'ENOENT') { - response - .code(500) - .send( - `An internal error occurred - open an issue on https://github.com/remy/mit-license with the following information: ${message}` - ) - return - } - } - - next() -} diff --git a/package.json b/package.json index 589b5a3a..fc39e38f 100644 --- a/package.json +++ b/package.json @@ -2,6 +2,7 @@ "name": "mit-licence", "description": "Hosted MIT License with details controlled through this repo", "private": true, + "type": "module", "version": "2.0.0", "main": "server.js", "repository": { @@ -17,42 +18,45 @@ "dev": "nodemon .", "serve": "node server.js", "test": "node test.js", - "lint": "standard" + "lint": "xo" }, "bugs": { "url": "https://github.com/remy/mit-license/issues" }, "license": "MIT", "dependencies": { - "@octokit/rest": "^18.0.6", - "@sindresorhus/is": "^3.1.2", + "@octokit/rest": "^18.5.3", + "@sindresorhus/is": "^4.0.1", "any-size": "^1.2.0", "btoa": "^1.2.1", "cors": "^2.8.5", "create-html-element": "^3.0.0", - "ejs": "^3.1.5", - "escape-goat": "^3.0.0", + "ejs": "^3.1.6", + "escape-goat": "^4.0.0", "express": "^4.17.1", "express-minify": "^1.0.0", - "gravatar-url": "^3.1.0", + "gravatar-url": "^4.0.0", "html-text": "^1.0.1", "load-json-file": "^6.2.0", "path-exists": "^4.0.0", "postcss-middleware": "^1.1.4", "postcss-preset-env": "^6.7.0", + "read-pkg": "^6.0.0", "serve-favicon": "^2.5.0", "temp-dir": "^2.0.0", "write-json-file": "^4.3.0", "yn": "^4.0.0" }, "devDependencies": { + "@babel/eslint-parser": "^7.14.3", + "@babel/plugin-syntax-top-level-await": "^7.12.13", "css": "^3.0.0", "file-ext": "^1.0.0", - "has-flag": "^4.0.0", + "has-flag": "^5.0.0", "husky": "^4.3.0", - "nodemon": "^2.0.4", + "nodemon": "^2.0.7", "path-extra": "^4.3.0", - "standard": "^14.3.4" + "xo": "^0.40.1" }, "resolutions": { "postcss-middleware/vinyl-fs/glob-stream/micromatch/braces": "^3.0.2" @@ -62,5 +66,18 @@ "pre-commit": "npm run lint", "pre-push": "npm test" } + }, + "xo": { + "space": 2, + "semicolon": false, + "parser": "@babel/eslint-parser", + "parserOptions": { + "requireConfigFile": false, + "babelOptions": { + "plugins": [ + "@babel/plugin-syntax-top-level-await" + ] + } + } } } diff --git a/routes/get.js b/routes/get.js index 284940ea..70faac79 100644 --- a/routes/get.js +++ b/routes/get.js @@ -1,10 +1,16 @@ -const path = require('path') -const { htmlEscape, htmlUnescape } = require('escape-goat') -const stripHtml = require('html-text') -const is = require('@sindresorhus/is') -const getGravatarUrl = require('gravatar-url') -const createHtmlElement = require('create-html-element') -const { renderFile } = require('ejs') +import {fileURLToPath} from 'node:url' +import path, {dirname} from 'node:path' +import {htmlEscape, htmlUnescape} from 'escape-goat' +import stripHtml from 'html-text' +import is from '@sindresorhus/is' +import getGravatarUrl from 'gravatar-url' +import createHtmlElement from 'create-html-element' +import {renderFile} from 'ejs' + +import loadUser from '../lib/load-user.js' +import loadOptions from '../lib/load-options.js' + +const directoryName = dirname(fileURLToPath(import.meta.url)) const getCopyrightName = (user, isPlainText) => { if (is.string(user)) { @@ -53,9 +59,24 @@ const getGravatarEmail = user => { const removeFalsy = array => array.filter(Boolean) -module.exports = async (_, response) => { - const { user, options } = response.locals - const isPlainText = options.format !== 'html' +const getRoute = async (request, response) => { + let user + try { + user = await loadUser(request.hostname) + } catch ({message}) { + response + .status(500) + .send(`An internal error occurred - open an issue on https://github.com/remy/mit-license with the following information: ${message}`) + return + } + + const options = loadOptions(request.url) + const year = options.pinnedYear ? + options.pinnedYear : + removeFalsy([options.startYear, options.endYear]).join('-') + const license = (options.license || user.license || 'MIT').toUpperCase() + const format = options.format || user.format || 'html' + const isPlainText = format !== 'html' let name @@ -85,21 +106,15 @@ module.exports = async (_, response) => { }) } - const year = options.pinnedYear - ? options.pinnedYear - : removeFalsy([options.startYear, options.endYear]).join('-') - const license = (options.license || user.license || 'MIT').toUpperCase() - const format = options.format || user.format || 'html' - try { - const content = await renderFile(path.join(__dirname, '..', 'licenses', `${license}.ejs`), { + const content = await renderFile(path.join(directoryName, '..', 'licenses', `${license}.ejs`), { info: `${year} ${name}`, theme: user.theme || 'default', gravatar }) if (format === 'txt') { - const { articleContent } = content.match(/
(?.*)<\/article>/ms).groups + const {articleContent} = content.match(/
(?.*)<\/article>/ms).groups response .set('Content-Type', 'text/plain; charset=UTF-8') @@ -111,8 +126,11 @@ module.exports = async (_, response) => { response.send(content) return } - response.json({ ...user, ...options }) + + response.json({...user, ...options}) } catch (error) { response.status(500).send(error) } } + +export default getRoute diff --git a/routes/post.js b/routes/post.js index e49a32fb..eff6031d 100644 --- a/routes/post.js +++ b/routes/post.js @@ -1,22 +1,29 @@ -const path = require('path') -const btoa = require('btoa') -const { version } = require(path.join(__dirname, '..', 'package.json')) -const size = require('any-size') -const { Octokit } = require('@octokit/rest') -const pathExists = require('path-exists') -const writeJsonFile = require('write-json-file') +import path, {dirname} from 'node:path' +import toBase64 from 'btoa' +import {readPackageAsync as readPackage} from 'read-pkg' +import size from 'any-size' +import {Octokit} from '@octokit/rest' +import pathExists from 'path-exists' +import writeJsonFile from 'write-json-file' +import yn from 'yn' +import is from '@sindresorhus/is' + +import {fileURLToPath} from 'node:url' + +import {isDomainId} from './utils.js' + +const directoryName = dirname(fileURLToPath(import.meta.url)) + +const {version} = await readPackage() + const github = new Octokit({ // GitHub personal access token auth: process.env.github_token, // User agent with version from package.json userAgent: `mit-license v${version}` }) -const yn = require('yn') -const is = require('@sindresorhus/is') -const { isDomainId } = require('./utils') - -function getUserData ({ query, body }) { +function getUserData({query, body}) { // If query parameters provided if (size(query) > 0) { return query @@ -31,24 +38,23 @@ function getUserData ({ query, body }) { return body } -// HTTP POST API -module.exports = async (request, response) => { - const { hostname } = request +const postRoute = async (request, response) => { + const {hostname} = request // Get different parts of hostname (example: remy.mit-license.org -> ['remy', 'mit-license', 'org']) - const params = hostname.split('.') + const parameters = hostname.split('.') // This includes the copyright, year, etc. const userData = getUserData(request) // If there isn't enough part of the hostname - if (params.length < 2) { + if (parameters.length < 2) { response.status(400).send('Please specify a subdomain in the URL.') return } // Extract the name from the URL - const [id] = params + const [id] = parameters if (!isDomainId(id)) { // Return a vague error intentionally @@ -62,7 +68,7 @@ module.exports = async (request, response) => { } // Check if the user file exists in the users directory - if (await pathExists(path.join(__dirname, '..', 'users', `${id}.json`))) { + if (await pathExists(path.join(directoryName, '..', 'users', `${id}.json`))) { response .status(409) .send( @@ -73,7 +79,7 @@ module.exports = async (request, response) => { if (userData.gravatar) { // Parse the string version of a boolean or similar - userData.gravatar = yn(userData.gravatar, { lenient: true }) + userData.gravatar = yn(userData.gravatar, {lenient: true}) if (is.undefined(userData.gravatar)) { response .status(400) @@ -98,13 +104,13 @@ module.exports = async (request, response) => { repo: 'mit-license', path: `users/${id}.json`, message: `Automated creation of user ${id}.`, - content: btoa(JSON.stringify(userData, 0, 2)), + content: toBase64(JSON.stringify(userData, 0, 2)), committer: { name: 'MIT License Bot', email: 'remy@leftlogic.com' } }), - writeJsonFile(path.join(__dirname, '..', 'users', `${id}.json`), userData, { indent: undefined }) + writeJsonFile(path.join(directoryName, '..', 'users', `${id}.json`), userData, {indent: undefined}) ]) response.status(201).send(`MIT license page created: https://${hostname}`) @@ -116,3 +122,6 @@ module.exports = async (request, response) => { ) } } + +// HTTP POST API +export default postRoute diff --git a/routes/utils.js b/routes/utils.js index 763b46a2..78317984 100644 --- a/routes/utils.js +++ b/routes/utils.js @@ -1 +1 @@ -exports.isDomainId = value => /^[\w-_]+$/.test(value) +export const isDomainId = value => /^[\w-_]+$/.test(value) diff --git a/server.js b/server.js index 2ed970fd..04bf9066 100644 --- a/server.js +++ b/server.js @@ -5,16 +5,25 @@ IMPORTANT: Set the `github_token` environment variable to a personal access to Server port: The `PORT` environment variable can also be set to control the port the server should be hosted on. */ -const express = require('express') -const minify = require('express-minify') -const favicon = require('serve-favicon') -const postcssMiddleware = require('postcss-middleware') -const tempDirectory = require('temp-dir') -const path = require('path') +import path, {dirname} from 'node:path' +import express from 'express' +import minify from 'express-minify' +import favicon from 'serve-favicon' +import postcssMiddleware from 'postcss-middleware' +import tempDirectory from 'temp-dir' +import postcssPresetEnv from 'postcss-preset-env' +import cors from 'cors' + +import {fileURLToPath} from 'node:url' + +import postRoute from './routes/post.js' +import getRoute from './routes/get.js' // Server const PORT = process.env.PORT || 8080 +const directoryName = dirname(fileURLToPath(import.meta.url)) + // Prepare application const app = express() app.use( @@ -22,22 +31,22 @@ app.use( cache: tempDirectory }) ) -app.use(favicon(path.join(__dirname, 'favicon.ico'))) -app.set('views', path.join(__dirname, '/licenses')) +app.use(favicon(path.join(directoryName, 'favicon.ico'))) +app.set('views', path.join(directoryName, '/licenses')) // Setup static files app.use('/robots.txt', express.static('robots.txt')) -app.use('/favicon.ico', express.static(`${__dirname}/favicon.ico`)) +app.use('/favicon.ico', express.static(`${directoryName}/favicon.ico`)) app.use( '/themes', postcssMiddleware({ plugins: [ - require('postcss-preset-env')({ + postcssPresetEnv({ overrideBrowserslist: '>= 0%' }) ], - src (request) { - return path.join(__dirname, 'themes', request.path) + src(request) { + return path.join(directoryName, 'themes', request.path) } }), express.static('themes') @@ -46,7 +55,7 @@ app.use( // Middleware // CORS -app.use(require('cors')()) +app.use(cors()) // Parse URL-encoded bodies (as sent by HTML forms) app.use( express.urlencoded({ @@ -56,13 +65,9 @@ app.use( // Parse JSON bodies (as sent by API clients) app.use(express.json()) -// Capture the id from the subdomain and options from parts of the url -app.use(require('./middleware/load-user')) -app.use(require('./middleware/load-options')) - // HTTP endpoints -app.post('/', require('./routes/post')) -app.get('/*', require('./routes/get')) +app.post('/', postRoute) +app.get('/*', getRoute) // Start listening for HTTP requests app.listen(PORT, () => { diff --git a/test.js b/test.js index 9b4315b1..7320a4aa 100644 --- a/test.js +++ b/test.js @@ -1,78 +1,79 @@ -const { promises: fs } = require('fs') -const writeJsonFile = require('write-json-file') -const CSS = require('css') -const { isDomainId } = require('./routes/utils') -const hasFlag = require('has-flag') -const getExtension = require('file-ext') -const path = require('path-extra') -const is = require('@sindresorhus/is') +import {promises as fs} from 'node:fs' +import writeJsonFile from 'write-json-file' +import {parse as parseCSS} from 'css' +import hasFlag from 'has-flag' +import getExtension from 'file-ext' +import path from 'path-extra' +import is from '@sindresorhus/is' +import {isDomainId} from './routes/utils.js' -async function report (content, fix) { +async function report(content, fix) { console.error(content) - if (fix && hasFlag('--fix')) await fix() + if (fix && hasFlag('--fix')) { + await fix() + } + process.exitCode = 1 } -(async () => { - const users = await fs.readdir('users') +const users = await fs.readdir('users') - for (const user of users) { - if (getExtension(user) !== 'json') { - await report(`${user} is not a json file`, async () => { - await fs.unlink(user) - }) - } +for await (const user of users) { + if (getExtension(user) !== 'json') { + await report(`${user} is not a json file`, async () => { + await fs.unlink(user) + }) + } - if (!isDomainId(path.base(user))) { - await report(`${user} is not a valid domain id.`) - } + if (!isDomainId(path.base(user))) { + await report(`${user} is not a valid domain id.`) + } + + try { + const data = await fs.readFile(path.join('users', user), 'utf8') try { - const data = await fs.readFile(path.join('users', user), 'utf8') + const parsedData = JSON.parse(data) - try { - const parsedData = JSON.parse(data) - - if (!parsedData.locked && !parsedData.copyright) { - report(`Copyright not specified in ${user}`) - } - - if (parsedData.version) { - await report(`Version tag found in ${user}`, async () => { - delete parsedData.version - await writeJsonFile(path.join('users', user), parsedData, { indent: 2 }) - }) - } - - if (is.string(parsedData.gravatar)) { - await report(`Gravatar boolean encoded as string found in ${user}`, async () => { - parsedData.gravatar = parsedData.gravatar === 'true' - const stringified = `${JSON.stringify(parsedData, 0, 2)}\n` - await fs.writeFile(path.join('users', user), stringified) - }) - } - } catch ({ message }) { - report(`Invalid JSON in ${user} (${message})`) + if (!parsedData.locked && !parsedData.copyright) { + report(`Copyright not specified in ${user}`) } - } catch ({ message }) { - report(`Unable to read ${user} (${message})`) + + if (parsedData.version) { + await report(`Version tag found in ${user}`, async () => { + delete parsedData.version + await writeJsonFile(path.join('users', user), parsedData, {indent: 2}) + }) + } + + if (is.string(parsedData.gravatar)) { + await report(`Gravatar boolean encoded as string found in ${user}`, async () => { + parsedData.gravatar = parsedData.gravatar === 'true' + const stringified = `${JSON.stringify(parsedData, 0, 2)}\n` + await fs.writeFile(path.join('users', user), stringified) + }) + } + } catch ({message}) { + report(`Invalid JSON in ${user} (${message})`) + } + } catch ({message}) { + report(`Unable to read ${user} (${message})`) + } +} + +const themes = await fs.readdir('themes') + +for await (const theme of themes) { + if (getExtension(theme) === 'css') { + try { + const cssData = await fs.readFile(path.join('themes', theme), 'utf8') + try { + parseCSS(cssData) + } catch ({message}) { + report(`Invalid CSS in ${theme} (${message})`) + } + } catch ({message}) { + report(`Unable to read ${theme} (${message})`) } } - - const themes = await fs.readdir('themes') - - for (const theme of themes) { - if (getExtension(theme) === 'css') { - try { - const cssData = await fs.readFile(path.join('themes', theme), 'utf8') - try { - CSS.parse(cssData) - } catch ({ message }) { - report(`Invalid CSS in ${theme} (${message})`) - } - } catch ({ message }) { - report(`Unable to read ${theme} (${message})`) - } - } - } -})() +} diff --git a/yarn.lock b/yarn.lock index c7a651d7e4defcb8ef865ce4d91ae92dcffaf453..e2706fae36ad1b7749099a5a902bb18d6dd3f48e 100644 GIT binary patch delta 82234 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 XNx}IjVrpgQ3y86N