/* eslint-disable fecs-camelcase */
/* eslint-disable babel/new-cap */
export function vue (hljs) {
const XML_IDENT_RE = '[A-Za-z0-9\\._:-]+'
const TAG_INTERNALS = {
endsWithParent: true,
illegal: /,
relevance: 0,
contains: [
{
className: 'attr',
begin: XML_IDENT_RE,
relevance: 0
},
{
begin: /=\s*/,
relevance: 0,
contains: [
{
className: 'string',
endsParent: true,
variants: [
{begin: /"/, end: /"/},
{begin: /'/, end: /'/},
{begin: /[^\s"'=<>`]+/}
]
}
]
}
]
}
return {
case_insensitive: true,
contains: [
hljs.COMMENT(
'',
{
relevance: 10
}
),
{
className: 'tag',
/*
The lookahead pattern (?=...) ensures that 'begin' only matches
'',
returnEnd: true,
subLanguage: ['css', 'less', 'scss', 'stylus']
}
},
{
className: 'tag',
// See the comment in the