eslint-plugin-file-export-name
Version:
ESLint plugin to enforce matching file names with default export names.
22 lines (19 loc) • 741 B
JavaScript
const convertToCase = (str, caseType) => {
switch (caseType.toLowerCase()) {
case "pascal":
return str
.replace(/(^\w|-\w|_\w)/g, (match) => match.replace(/[-_]/g, "").toUpperCase());
case "camel":
return str.replace(/([-_]\w)/g, (match) => match[1].toUpperCase());
case "kebab":
return str.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase().replace(/_/g, "-");
case "snake":
return str.replace(/([a-z])([A-Z])/g, "$1_$2").toLowerCase().replace(/-/g, "_");
default:
throw new Error(`Unknown case type: ${caseType}`);
}
}
const matchPattern = (pattern, value) => {
return pattern.test(value);
}
export { convertToCase, matchPattern };