@blitz/textmate
Version:
TextMate Grammars for StackBlitz
103 lines (102 loc) • 1.92 kB
JSON
{
"scopeName": "host-object-literal.ng",
"injectionSelector": "L:meta.decorator.ts -comment -text.html -expression.ng",
"patterns": [
{
"include": "#hostObjectLiteral"
}
],
"repository": {
"hostObjectLiteral": {
"begin": "(host)\\s*(:)\\s*{",
"beginCaptures": {
"1": {
"name": "meta.object-literal.key.ts"
},
"2": {
"name": "meta.object-literal.key.ts punctuation.separator.key-value.ts"
}
},
"contentName": "hostbindings.ng",
"end": "}",
"patterns": [
{
"include": "#ngHostBindingDynamic"
},
{
"include": "#ngHostBindingStatic"
},
{
"include": "source.ts"
}
]
},
"ngHostBindingDynamic": {
"begin": "\\s*('|\")([\\[(].*?[\\])])(\\1)(:)",
"beginCaptures": {
"1": {
"name": "string"
},
"2": {
"name": "entity.other.attribute-name.html"
},
"3": {
"name": "string"
},
"4": {
"name": "meta.object-literal.key.ts punctuation.separator.key-value.ts"
}
},
"contentName": "hostbinding.dynamic.ng",
"patterns": [
{
"include": "#ngHostBindingDynamicValue"
}
],
"end": "(?=,|})"
},
"ngHostBindingDynamicValue": {
"begin": "\\s*(`|'|\")",
"beginCaptures": {
"1": {
"name": "string"
}
},
"patterns": [
{
"include": "expression.ng"
}
],
"end": "\\1",
"endCaptures": {
"0": {
"name": "string"
}
}
},
"ngHostBindingStatic": {
"begin": "\\s*('|\")?(.*?)(\\1)?\\s*:",
"end": "(?=,|})",
"beginCaptures": {
"1": {
"name": "string"
},
"2": {
"name": "entity.other.attribute-name.html"
},
"3": {
"name": "string"
},
"4": {
"name": "meta.object-literal.key.ts punctuation.separator.key-value.ts"
}
},
"contentName": "hostbinding.static.ng",
"patterns": [
{
"include": "source.ts"
}
]
}
}
}