src/vs/editor/contrib/linesOperations/browser/linesOperations.ts/KebabCaseAction/_modifyText
class KebabCaseAction:	protected _modifyText(text: string, _: string): string {
		const caseBoundary = KebabCaseAction.caseBoundary.get();
		const singleLetters = KebabCaseAction.singleLetters.get();
		const underscoreBoundary = KebabCaseAction.underscoreBoundary.get();

		if (!caseBoundary || !singleLetters || !underscoreBoundary) {
			// one or more regexps aren't supported
			return text;
		}

		return text
			.replace(underscoreBoundary, '$1-$3')
			.replace(caseBoundary, '$1-$2')
			.replace(singleLetters, '$1-$2')
			.toLocaleLowerCase();
	}