This commit is contained in:
lowlighter
2022-07-04 20:04:04 -04:00
7 changed files with 13 additions and 14 deletions

View File

@@ -370,6 +370,8 @@ Generate metrics that can be embedded everywhere, including your GitHub profile
# 📚 Documentation
> <sup>*⚠️ This is the documentation of **v3.26-beta** (`@master`/`@main` branches) which includes [unreleased features](https://github.com/lowlighter/metrics/compare/latest...master) planned for next release. See documentation for current released version [**v3.25** (`@latest` branch) here](https://github.com/lowlighter/metrics/blob/latest/README.md).* </sup>
## 🦮 Setup

View File

@@ -5,9 +5,9 @@ import processes from "child_process"
import crypto from "crypto"
import { minify as csso } from "csso"
import emoji from "emoji-name-map"
import { fileTypeFromBuffer } from "file-type"
import fss from "fs"
import fs from "fs/promises"
import sharp from "sharp"
import linguist from "linguist-js"
import { marked } from "marked"
import minimatch from "minimatch"
@@ -23,17 +23,17 @@ import purgecss from "purgecss"
import readline from "readline"
import rss from "rss-parser"
import htmlsanitize from "sanitize-html"
import sharp from "sharp"
import git from "simple-git"
import SVGO from "svgo"
import twemojis from "twemoji-parser"
import url from "url"
import util from "util"
import xmlformat from "xml-formatter"
import {fileTypeFromBuffer} from "file-type"
prism_lang()
//Exports
export { axios, emoji, fetch, fs, git, sharp, minimatch, opengraph, os, paths, processes, rss, url, util }
export { axios, emoji, fetch, fs, git, minimatch, opengraph, os, paths, processes, rss, sharp, url, util }
/**Returns module __dirname */
export function __module(module) {
@@ -338,8 +338,9 @@ export async function imgb64(image, {width, height, fallback = true} = {}) {
ext = (await fileTypeFromBuffer(buffer)).ext ?? ext
image = sharp(buffer)
}
else
else {
image = sharp(image)
}
}
catch {
return imgb64(null, {fallback})
@@ -636,7 +637,7 @@ export async function record({page, width, height, frames, scale = 1, quality =
console.debug(`metrics/record > processed ${frames}/${frames} frames`)
//Post-processing
console.debug("metrics/record > applying post-processing")
return Promise.all(images.map(async buffer => `data:image/png;base64,${(await (sharp(buffer).resize({width:Math.round(width*scale), height:Math.round(height*scale)}).png({quality}).toBuffer())).toString("base64")}`))
return Promise.all(images.map(async buffer => `data:image/png;base64,${(await (sharp(buffer).resize({width: Math.round(width * scale), height: Math.round(height * scale)}).png({quality}).toBuffer())).toString("base64")}`))
}
/**Create gif from puppeteer browser*/

View File

@@ -28,7 +28,7 @@ export default async function({login, q, imports, data, account}, {enabled = fal
}, selector)
console.debug(`metrics/compute/${login}/plugins > screenshot > coordinates ${JSON.stringify(clip)}`)
const [buffer] = await imports.record({page, ...clip, frames: 1, background})
const screenshot = await imports.sharp(Buffer.from(buffer.split(",").pop(), "base64")).resize({width:Math.min(454 * (1 + data.large), clip.width)})
const screenshot = await imports.sharp(Buffer.from(buffer.split(",").pop(), "base64")).resize({width: Math.min(454 * (1 + data.large), clip.width)})
const metadata = await screenshot.metadata()
await browser.close()

View File

@@ -75,8 +75,7 @@
<img width="900" height="1" alt=""></td>
</tr>
<tr>
<td nowrap="nowrap">✨ On <code>master</code>/<code>main</code><br>
<b>type:</b> <code>boolean</code>
<td nowrap="nowrap"><b>type:</b> <code>boolean</code>
<br>
<b>default:</b> yes<br></td>
</tr>

View File

@@ -123,8 +123,7 @@ Recent language activity may also displayed (it requires extras features to be e
<img width="900" height="1" alt=""></td>
</tr>
<tr>
<td nowrap="nowrap">✨ On <code>master</code>/<code>main</code><br>
<b>type:</b> <code>number</code>
<td nowrap="nowrap"><b>type:</b> <code>number</code>
<i>(0 ≤
𝑥
≤ 8)</i>

View File

@@ -101,8 +101,7 @@ It uses <a href="https://developers.google.com/speed/docs/insights/v5/get-starte
<img width="900" height="1" alt=""></td>
</tr>
<tr>
<td nowrap="nowrap">✨ On <code>master</code>/<code>main</code><br>
<b>type:</b> <code>boolean</code>
<td nowrap="nowrap"><b>type:</b> <code>boolean</code>
<br>
<b>default:</b> no<br></td>
</tr>

View File

@@ -63,8 +63,7 @@
<img width="900" height="1" alt=""></td>
</tr>
<tr>
<td nowrap="nowrap">✨ On <code>master</code>/<code>main</code><br>
<b>type:</b> <code>number</code>
<td nowrap="nowrap"><b>type:</b> <code>number</code>
<i>(0 ≤
𝑥
≤ 6)</i>