/**
* Transform snake_case string to camelCase string
* @param s Snake_case string
*/
export function snakeToCamel(s: string): string {
return s.replace(/(? {
return $1.substring(1).toUpperCase()
})
}
/**
* Transform camelCase string to PascalCase string
* @param s camelCase string
*/
export const camelToPascal = (s: string): string => s[0].toUpperCase() + s.substring(1)
/**
* Format a string as a JS documentation comment
* @param s Comment to format
*/
export function jsComment(s: string): string {
return (
`/**${
// awesome hack not to break up {@link} links and /g, '\n\n')
.replace(/\{@link (.*?)\}/g, '{@link$1}')
.replace(/