badge-urls
Version:
Helper functions to generate URLs for all badges / shields from shields.io
23 lines (22 loc) • 628 B
JavaScript
import { isAlphaNumeric } from "./character-tests";
export function toCase(input, upperCaseFirst) {
const chars = input.split("");
const output = [];
let upperCaseNext = upperCaseFirst;
for (const char of chars) {
if (isAlphaNumeric(char)) {
output.push(upperCaseNext ? char.toUpperCase() : char.toLowerCase());
upperCaseNext = false;
}
else {
upperCaseNext = true;
}
}
return output.join("");
}
export function camelCase(input) {
return toCase(input, false);
}
export function pascalCase(input) {
return toCase(input, true);
}