package com.wix.rt.codeInsight; import com.intellij.openapi.util.text.StringUtil; import java.util.regex.Pattern; /** * @author Dennis.Ushakov */ public final class DirectiveUtil { private static final Pattern COMPILE = Pattern.compile("(?=[A-Z])"); private DirectiveUtil() { } public static String getAttributeName(final String text) { final String[] split = COMPILE.split(StringUtil.unquoteString(text)); for (int i = 0; i < split.length; i++) { split[i] = StringUtil.decapitalize(split[i]); } return StringUtil.join(split, "-"); } public static String normalizeAttributeName(String name) { if (name == null) return null; if (name.startsWith("data-")) { name = name.substring(5); } else if (name.startsWith("x-")) { name = name.substring(2); } name = name.replace(':', '-'); name = name.replace('_', '-'); if (name.endsWith("-start")) { name = name.substring(0, name.length() - 6); } else if (name.endsWith("-end")) { name = name.substring(0, name.length() - 4); } return name; } }