Files
dynamic-badges-action/node_modules/anafanafo/index.js
Rúnar Berg a2d3829b14 Add save svg-badge directly to gist
This adds the posibility of saving an SVG badge generated by the same
shields.io dirictly to the gist. Instead of prepering a JSON file to
be sent to their service, we use their library directly, which outputs
an SVG file that we can save to the user’s gist.

Filenames ending in `.svg` will use this library automatically.

Additionally there is a major refactoring where the older `node:http`
library has been swapped out for `fetch`.

Also swap from node 16 to node 20

fixes #24
2023-10-05 08:29:45 -07:00

23 lines
699 B
JavaScript

'use strict'
const { createConsumer } = require('char-width-table-consumer')
const consumers = {
'10px Verdana': createConsumer(require('./data/verdana-10px-normal.json')),
'bold 10px Verdana': createConsumer(require('./data/verdana-10px-bold.json')),
'11px Verdana': createConsumer(require('./data/verdana-11px-normal.json')),
'bold 11px Helvetica': createConsumer(
require('./data/helvetica-11px-bold.json')
),
}
module.exports = function measure(text, { font, ...rest }) {
const consumer = consumers[font]
if (!consumer) {
throw Error(
`Unknown font "${font}", expected ${Object.keys(consumers).join(', ')}`
)
}
return consumer.widthOf(text, { ...rest })
}