@enjoys/context-engine 1.2.0 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/codeActions/angular.json +126 -0
- package/data/codeActions/css.json +111 -0
- package/data/codeActions/nestjs.json +124 -0
- package/data/codeActions/nextjs.json +198 -0
- package/data/codeActions/react.json +154 -0
- package/data/codeActions/shadcn.json +112 -0
- package/data/codeActions/shell.json +169 -26
- package/data/codeActions/tailwindcss.json +76 -0
- package/data/codeLens/angular.json +22 -0
- package/data/codeLens/css.json +68 -0
- package/data/codeLens/nestjs.json +21 -0
- package/data/codeLens/nextjs.json +117 -0
- package/data/codeLens/react.json +89 -0
- package/data/codeLens/shadcn.json +89 -0
- package/data/codeLens/shell.json +59 -17
- package/data/codeLens/tailwindcss.json +103 -0
- package/data/color/angular.json +21 -0
- package/data/color/css.json +124 -0
- package/data/color/nestjs.json +18 -0
- package/data/color/nextjs.json +22 -0
- package/data/color/react.json +93 -0
- package/data/color/shadcn.json +66 -0
- package/data/color/shell.json +106 -80
- package/data/color/tailwindcss.json +53 -0
- package/data/commands/angular.json +312 -0
- package/data/commands/css.json +41 -0
- package/data/commands/manifest.json +734 -727
- package/data/commands/nestjs.json +273 -0
- package/data/commands/nextjs.json +123 -0
- package/data/commands/react.json +210 -0
- package/data/commands/shadcn.json +410 -0
- package/data/commands/shell.json +571 -41
- package/data/commands/tailwindcss.json +53 -0
- package/data/completion/angular.json +1490 -0
- package/data/completion/css.json +1176 -0
- package/data/completion/javascript.json +27 -0
- package/data/completion/nestjs.json +1454 -0
- package/data/completion/nextjs.json +1373 -0
- package/data/completion/react.json +1319 -0
- package/data/completion/redis-cli.json +1 -1
- package/data/completion/shadcn.json +1202 -0
- package/data/completion/shell.json +2446 -510
- package/data/completion/tailwindcss.json +284 -0
- package/data/completion/typescript.json +27 -0
- package/data/declaration/angular.json +46 -0
- package/data/declaration/css.json +59 -0
- package/data/declaration/nestjs.json +47 -0
- package/data/declaration/nextjs.json +274 -0
- package/data/declaration/react.json +199 -0
- package/data/declaration/shadcn.json +211 -0
- package/data/declaration/shell.json +343 -24
- package/data/declaration/tailwindcss.json +137 -0
- package/data/definition/angular.json +670 -0
- package/data/definition/css.json +115 -0
- package/data/definition/nestjs.json +684 -0
- package/data/definition/nextjs.json +439 -0
- package/data/definition/react.json +397 -0
- package/data/definition/redis-cli.json +1 -1
- package/data/definition/shadcn.json +99 -0
- package/data/definition/shell.json +820 -0
- package/data/definition/tailwindcss.json +115 -0
- package/data/documentHighlight/angular.json +414 -0
- package/data/documentHighlight/css.json +125 -0
- package/data/documentHighlight/nestjs.json +115 -0
- package/data/documentHighlight/nextjs.json +212 -0
- package/data/documentHighlight/react.json +119 -0
- package/data/documentHighlight/shadcn.json +168 -0
- package/data/documentHighlight/shell.json +664 -334
- package/data/documentHighlight/tailwindcss.json +160 -0
- package/data/documentRangeFormatting/angular.json +45 -0
- package/data/documentRangeFormatting/css.json +101 -0
- package/data/documentRangeFormatting/nestjs.json +17 -0
- package/data/documentRangeFormatting/nextjs.json +17 -0
- package/data/documentRangeFormatting/react.json +78 -0
- package/data/documentRangeFormatting/shadcn.json +45 -0
- package/data/documentRangeFormatting/shell.json +120 -53
- package/data/documentRangeFormatting/tailwindcss.json +55 -0
- package/data/documentSymbol/angular.json +180 -0
- package/data/documentSymbol/css.json +96 -0
- package/data/documentSymbol/nestjs.json +152 -0
- package/data/documentSymbol/nextjs.json +159 -0
- package/data/documentSymbol/react.json +145 -0
- package/data/documentSymbol/shadcn.json +131 -0
- package/data/documentSymbol/shell.json +166 -26
- package/data/documentSymbol/tailwindcss.json +110 -0
- package/data/foldingRange/angular.json +99 -0
- package/data/foldingRange/css.json +66 -0
- package/data/foldingRange/nestjs.json +26 -0
- package/data/foldingRange/nextjs.json +26 -0
- package/data/foldingRange/react.json +120 -0
- package/data/foldingRange/shadcn.json +93 -0
- package/data/foldingRange/shell.json +106 -46
- package/data/foldingRange/tailwindcss.json +60 -0
- package/data/formatting/angular.json +21 -0
- package/data/formatting/css.json +73 -0
- package/data/formatting/nestjs.json +23 -0
- package/data/formatting/nextjs.json +23 -0
- package/data/formatting/react.json +71 -0
- package/data/formatting/shadcn.json +61 -0
- package/data/formatting/shell.json +103 -19
- package/data/formatting/tailwindcss.json +48 -0
- package/data/hover/angular.json +455 -0
- package/data/hover/css.json +300 -0
- package/data/hover/nestjs.json +296 -0
- package/data/hover/nextjs.json +305 -0
- package/data/hover/react.json +173 -0
- package/data/hover/redis-cli.json +1 -1
- package/data/hover/shadcn.json +450 -0
- package/data/hover/shell.json +684 -75
- package/data/hover/tailwindcss.json +968 -0
- package/data/implementation/angular.json +22 -0
- package/data/implementation/css.json +65 -0
- package/data/implementation/nestjs.json +24 -0
- package/data/implementation/nextjs.json +137 -0
- package/data/implementation/react.json +125 -0
- package/data/implementation/shadcn.json +89 -0
- package/data/implementation/shell.json +59 -3
- package/data/implementation/tailwindcss.json +59 -0
- package/data/inlayHints/angular.json +24 -0
- package/data/inlayHints/css.json +87 -0
- package/data/inlayHints/nestjs.json +24 -0
- package/data/inlayHints/nextjs.json +143 -0
- package/data/inlayHints/react.json +177 -0
- package/data/inlayHints/shadcn.json +109 -0
- package/data/inlayHints/shell.json +223 -35
- package/data/inlayHints/tailwindcss.json +111 -0
- package/data/inlineCompletions/angular.json +135 -0
- package/data/inlineCompletions/css.json +125 -0
- package/data/inlineCompletions/javascript.json +12 -0
- package/data/inlineCompletions/nestjs.json +25 -0
- package/data/inlineCompletions/nextjs.json +179 -0
- package/data/inlineCompletions/react.json +203 -0
- package/data/inlineCompletions/shadcn.json +115 -0
- package/data/inlineCompletions/shell.json +185 -35
- package/data/inlineCompletions/tailwindcss.json +411 -0
- package/data/inlineCompletions/typescript.json +12 -0
- package/data/linkedEditingRange/angular.json +23 -0
- package/data/linkedEditingRange/css.json +40 -0
- package/data/linkedEditingRange/nestjs.json +10 -0
- package/data/linkedEditingRange/nextjs.json +11 -0
- package/data/linkedEditingRange/react.json +75 -0
- package/data/linkedEditingRange/shadcn.json +23 -0
- package/data/linkedEditingRange/shell.json +25 -25
- package/data/linkedEditingRange/tailwindcss.json +30 -0
- package/data/links/angular.json +95 -0
- package/data/links/css.json +55 -0
- package/data/links/nestjs.json +130 -0
- package/data/links/nextjs.json +91 -0
- package/data/links/react.json +75 -0
- package/data/links/shadcn.json +98 -0
- package/data/links/shell.json +56 -0
- package/data/links/tailwindcss.json +65 -0
- package/data/manifest.json +399 -150
- package/data/onTypeFormatting/angular.json +14 -0
- package/data/onTypeFormatting/css.json +82 -0
- package/data/onTypeFormatting/nestjs.json +16 -0
- package/data/onTypeFormatting/nextjs.json +17 -0
- package/data/onTypeFormatting/react.json +127 -0
- package/data/onTypeFormatting/shadcn.json +54 -0
- package/data/onTypeFormatting/shell.json +72 -68
- package/data/onTypeFormatting/tailwindcss.json +63 -0
- package/data/rangeSemanticTokens/angular.json +140 -0
- package/data/rangeSemanticTokens/css.json +125 -0
- package/data/rangeSemanticTokens/nestjs.json +27 -0
- package/data/rangeSemanticTokens/nextjs.json +28 -0
- package/data/rangeSemanticTokens/react.json +216 -0
- package/data/rangeSemanticTokens/shadcn.json +140 -0
- package/data/rangeSemanticTokens/shell.json +247 -69
- package/data/rangeSemanticTokens/tailwindcss.json +186 -0
- package/data/references/angular.json +26 -0
- package/data/references/css.json +65 -0
- package/data/references/nestjs.json +24 -0
- package/data/references/nextjs.json +178 -0
- package/data/references/react.json +192 -0
- package/data/references/shadcn.json +101 -0
- package/data/references/shell.json +323 -92
- package/data/references/tailwindcss.json +125 -0
- package/data/rename/angular.json +131 -0
- package/data/rename/css.json +91 -0
- package/data/rename/nestjs.json +32 -0
- package/data/rename/nextjs.json +31 -0
- package/data/rename/react.json +88 -0
- package/data/rename/shadcn.json +79 -0
- package/data/rename/shell.json +101 -31
- package/data/rename/tailwindcss.json +58 -0
- package/data/selectionRange/angular.json +95 -0
- package/data/selectionRange/css.json +55 -0
- package/data/selectionRange/nestjs.json +21 -0
- package/data/selectionRange/nextjs.json +22 -0
- package/data/selectionRange/react.json +87 -0
- package/data/selectionRange/shadcn.json +89 -0
- package/data/selectionRange/shell.json +65 -35
- package/data/selectionRange/tailwindcss.json +35 -0
- package/data/semanticTokens/angular.json +198 -0
- package/data/semanticTokens/css.json +107 -0
- package/data/semanticTokens/nestjs.json +35 -0
- package/data/semanticTokens/nextjs.json +38 -0
- package/data/semanticTokens/react.json +215 -0
- package/data/semanticTokens/shadcn.json +180 -0
- package/data/semanticTokens/shell.json +238 -65
- package/data/semanticTokens/tailwindcss.json +161 -0
- package/data/signatureHelp/angular.json +182 -0
- package/data/signatureHelp/css.json +137 -0
- package/data/signatureHelp/nestjs.json +128 -0
- package/data/signatureHelp/nextjs.json +127 -0
- package/data/signatureHelp/react.json +281 -0
- package/data/signatureHelp/shadcn.json +237 -0
- package/data/signatureHelp/shell.json +797 -104
- package/data/signatureHelp/tailwindcss.json +64 -0
- package/data/typeDefinition/angular.json +362 -0
- package/data/typeDefinition/css.json +53 -0
- package/data/typeDefinition/nestjs.json +334 -0
- package/data/typeDefinition/nextjs.json +285 -0
- package/data/typeDefinition/react.json +236 -0
- package/data/typeDefinition/shadcn.json +292 -0
- package/data/typeDefinition/shell.json +104 -40
- package/data/typeDefinition/tailwindcss.json +47 -0
- package/package.json +1 -1
- package/data/codeActions/bash.json +0 -169
- package/data/codeActions/zsh.json +0 -49
- package/data/codeLens/bash.json +0 -75
- package/data/codeLens/zsh.json +0 -19
- package/data/color/bash.json +0 -100
- package/data/color/zsh.json +0 -80
- package/data/commands/bash.json +0 -102
- package/data/commands/zsh.json +0 -166
- package/data/completion/bash.json +0 -1184
- package/data/completion/zsh.json +0 -973
- package/data/declaration/bash.json +0 -301
- package/data/declaration/zsh.json +0 -205
- package/data/definition/bash.json +0 -565
- package/data/definition/zsh.json +0 -350
- package/data/documentHighlight/bash.json +0 -393
- package/data/documentHighlight/zsh.json +0 -266
- package/data/documentRangeFormatting/bash.json +0 -41
- package/data/documentRangeFormatting/zsh.json +0 -59
- package/data/documentSymbol/bash.json +0 -124
- package/data/documentSymbol/zsh.json +0 -26
- package/data/foldingRange/bash.json +0 -76
- package/data/foldingRange/zsh.json +0 -46
- package/data/formatting/bash.json +0 -88
- package/data/formatting/zsh.json +0 -28
- package/data/hover/bash.json +0 -579
- package/data/hover/zsh.json +0 -96
- package/data/implementation/bash.json +0 -44
- package/data/implementation/zsh.json +0 -41
- package/data/inlayHints/bash.json +0 -207
- package/data/inlayHints/zsh.json +0 -43
- package/data/inlineCompletions/bash.json +0 -155
- package/data/inlineCompletions/zsh.json +0 -17
- package/data/linkedEditingRange/bash.json +0 -25
- package/data/linkedEditingRange/zsh.json +0 -25
- package/data/links/bash.json +0 -56
- package/data/links/zsh.json +0 -15
- package/data/onTypeFormatting/bash.json +0 -68
- package/data/onTypeFormatting/zsh.json +0 -68
- package/data/rangeSemanticTokens/bash.json +0 -90
- package/data/rangeSemanticTokens/zsh.json +0 -76
- package/data/references/bash.json +0 -221
- package/data/references/zsh.json +0 -166
- package/data/rename/bash.json +0 -37
- package/data/rename/zsh.json +0 -31
- package/data/selectionRange/bash.json +0 -35
- package/data/selectionRange/zsh.json +0 -35
- package/data/semanticTokens/bash.json +0 -71
- package/data/semanticTokens/zsh.json +0 -71
- package/data/signatureHelp/bash.json +0 -111
- package/data/signatureHelp/zsh.json +0 -118
- package/data/typeDefinition/bash.json +0 -95
- package/data/typeDefinition/zsh.json +0 -40
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "css",
|
|
3
|
+
"tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"],
|
|
4
|
+
"tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "abstract", "async", "modification", "documentation", "defaultLibrary"],
|
|
5
|
+
"tokenLegend": {
|
|
6
|
+
"tokenTypes": ["class", "variable", "property", "keyword", "function", "number", "string", "comment", "operator", "decorator", "enum", "modifier", "namespace"],
|
|
7
|
+
"tokenModifiers": ["declaration", "definition", "readonly", "deprecated", "documentation", "defaultLibrary"]
|
|
8
|
+
},
|
|
9
|
+
"rangeTokenRules": [
|
|
10
|
+
{
|
|
11
|
+
"type": "class",
|
|
12
|
+
"pattern": "\\.[a-zA-Z_][a-zA-Z0-9_-]*",
|
|
13
|
+
"modifiers": [],
|
|
14
|
+
"description": "CSS class selectors within the requested range.",
|
|
15
|
+
"rangeScope": "expression"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"type": "class",
|
|
19
|
+
"pattern": "#[a-zA-Z_][a-zA-Z0-9_-]*",
|
|
20
|
+
"modifiers": ["readonly"],
|
|
21
|
+
"description": "CSS ID selectors within the requested range.",
|
|
22
|
+
"rangeScope": "expression"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"type": "property",
|
|
26
|
+
"pattern": "(?<=^\\s*|;\\s*)[a-z][a-z-]*(?=\\s*:)",
|
|
27
|
+
"modifiers": [],
|
|
28
|
+
"description": "CSS property names within a declaration range.",
|
|
29
|
+
"rangeScope": "declaration"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"type": "variable",
|
|
33
|
+
"pattern": "--[a-zA-Z_][a-zA-Z0-9_-]*(?=\\s*:)",
|
|
34
|
+
"modifiers": ["declaration", "definition"],
|
|
35
|
+
"description": "CSS custom property definitions within the range.",
|
|
36
|
+
"rangeScope": "declaration"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"type": "variable",
|
|
40
|
+
"pattern": "var\\(\\s*--[a-zA-Z_][a-zA-Z0-9_-]*",
|
|
41
|
+
"modifiers": [],
|
|
42
|
+
"description": "CSS custom property references (var(--name)) within the range.",
|
|
43
|
+
"rangeScope": "expression"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"type": "keyword",
|
|
47
|
+
"pattern": "@(media|keyframes|supports|layer|container|font-face|import|charset|namespace|page|counter-style|property|scope)\\b",
|
|
48
|
+
"modifiers": [],
|
|
49
|
+
"description": "CSS at-rule keywords within the range.",
|
|
50
|
+
"rangeScope": "statement"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"type": "modifier",
|
|
54
|
+
"pattern": ":(hover|focus|active|visited|first-child|last-child|nth-child|nth-of-type|not|is|where|has|focus-visible|focus-within|checked|disabled|enabled|empty|root|target|lang|any-link|placeholder-shown|required|optional|valid|invalid|in-range|out-of-range|read-only|read-write|default|indeterminate|first-of-type|last-of-type|only-child|only-of-type)\\b",
|
|
55
|
+
"modifiers": [],
|
|
56
|
+
"description": "CSS pseudo-classes within the range.",
|
|
57
|
+
"rangeScope": "expression"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"type": "decorator",
|
|
61
|
+
"pattern": "::(before|after|first-line|first-letter|selection|placeholder|marker|backdrop|file-selector-button|cue|part|slotted|highlight|spelling-error|grammar-error|target-text)\\b",
|
|
62
|
+
"modifiers": [],
|
|
63
|
+
"description": "CSS pseudo-elements within the range.",
|
|
64
|
+
"rangeScope": "expression"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"type": "function",
|
|
68
|
+
"pattern": "(calc|var|min|max|clamp|env|attr|url|linear-gradient|radial-gradient|conic-gradient|repeating-linear-gradient|repeating-radial-gradient|image-set|counter|counters|fit-content|minmax|repeat|translateX?|translateY|translate3d|rotateX?|rotateY|rotateZ|rotate3d|scaleX?|scaleY|scale3d|skewX?|skewY|matrix|matrix3d|perspective|cubic-bezier|steps|rgb|rgba|hsl|hsla|oklch|oklab|lab|lch|color|color-mix|light-dark)\\s*\\(",
|
|
69
|
+
"modifiers": [],
|
|
70
|
+
"description": "CSS function calls within the range.",
|
|
71
|
+
"rangeScope": "expression"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"type": "enum",
|
|
75
|
+
"pattern": "#[0-9a-fA-F]{3,8}\\b",
|
|
76
|
+
"modifiers": [],
|
|
77
|
+
"description": "CSS hex color values within the range.",
|
|
78
|
+
"rangeScope": "expression"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"type": "number",
|
|
82
|
+
"pattern": "-?\\d+(\\.\\d+)?(px|em|rem|%|vw|vh|vmin|vmax|svh|svw|dvh|dvw|ch|ex|lh|rlh|cap|ic|cqw|cqh|cqi|cqb|cqmin|cqmax|deg|rad|grad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx|fr)?\\b",
|
|
83
|
+
"modifiers": [],
|
|
84
|
+
"description": "CSS numeric values with units within the range.",
|
|
85
|
+
"rangeScope": "expression"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"type": "string",
|
|
89
|
+
"pattern": "['\"][^'\"]*['\"]",
|
|
90
|
+
"modifiers": [],
|
|
91
|
+
"description": "CSS string literals within the range.",
|
|
92
|
+
"rangeScope": "expression"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"type": "comment",
|
|
96
|
+
"pattern": "/\\*[\\s\\S]*?\\*/",
|
|
97
|
+
"modifiers": [],
|
|
98
|
+
"description": "CSS block comments within the range. May span multiple lines.",
|
|
99
|
+
"rangeScope": "block"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"type": "operator",
|
|
103
|
+
"pattern": "[>+~|](?=\\s*[.#a-zA-Z*:\\[])",
|
|
104
|
+
"modifiers": [],
|
|
105
|
+
"description": "CSS selector combinators within the range.",
|
|
106
|
+
"rangeScope": "expression"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"type": "namespace",
|
|
110
|
+
"pattern": "@media\\s+[^{]+",
|
|
111
|
+
"modifiers": [],
|
|
112
|
+
"description": "Media query conditions within the range.",
|
|
113
|
+
"rangeScope": "statement"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"type": "keyword",
|
|
117
|
+
"pattern": "!important\\b",
|
|
118
|
+
"modifiers": ["deprecated"],
|
|
119
|
+
"description": "CSS !important flag within the range.",
|
|
120
|
+
"rangeScope": "declaration"
|
|
121
|
+
}
|
|
122
|
+
],
|
|
123
|
+
"supportedRangeScopes": ["statement", "block", "expression", "declaration"],
|
|
124
|
+
"multilineTokens": ["comment", "string"]
|
|
125
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "nestjs",
|
|
3
|
+
"rangeSemanticTokens": {
|
|
4
|
+
"tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"],
|
|
5
|
+
"tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "async", "modification", "documentation", "defaultLibrary", "abstract"],
|
|
6
|
+
"tokenLegend": {
|
|
7
|
+
"tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"],
|
|
8
|
+
"tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "async", "modification", "documentation", "defaultLibrary", "abstract"]
|
|
9
|
+
},
|
|
10
|
+
"rangeTokenRules": [
|
|
11
|
+
{ "pattern": "\\b(import|export|from|default|as|const|let|var|function|return|if|else|for|while|switch|case|break|continue|throw|try|catch|finally|new|typeof|instanceof|async|await|class|extends|this|implements|abstract|private|protected|public|readonly)\\b", "tokenType": "keyword", "tokenModifiers": [], "description": "Keywords" },
|
|
12
|
+
{ "pattern": "@(Controller|Injectable|Module|Get|Post|Put|Patch|Delete|Body|Param|Query|Headers|UseGuards|UseInterceptors|UsePipes|UseFilters|Inject|Catch|SetMetadata)\\b", "tokenType": "decorator", "tokenModifiers": ["defaultLibrary"], "description": "NestJS decorators" },
|
|
13
|
+
{ "pattern": "@(Entity|Column|PrimaryGeneratedColumn|ManyToOne|OneToMany|ManyToMany|OneToOne|JoinColumn)\\b", "tokenType": "decorator", "tokenModifiers": ["defaultLibrary"], "description": "TypeORM decorators" },
|
|
14
|
+
{ "pattern": "@(IsString|IsNumber|IsNotEmpty|IsOptional|IsEmail|IsArray|IsEnum|ValidateNested)\\b", "tokenType": "decorator", "tokenModifiers": ["defaultLibrary"], "description": "Validator decorators" },
|
|
15
|
+
{ "pattern": "\\b(NestFactory|ModuleRef|ConfigModule|TypeOrmModule|JwtModule|ValidationPipe)\\b", "tokenType": "class", "tokenModifiers": ["defaultLibrary"], "description": "NestJS classes" },
|
|
16
|
+
{ "pattern": "\\b(HttpException|BadRequestException|UnauthorizedException|ForbiddenException|NotFoundException)\\b", "tokenType": "class", "tokenModifiers": ["defaultLibrary"], "description": "Exceptions" },
|
|
17
|
+
{ "pattern": "\\b(CanActivate|PipeTransform|NestInterceptor|ExceptionFilter|NestMiddleware|ExecutionContext|ArgumentsHost)\\b", "tokenType": "interface", "tokenModifiers": ["defaultLibrary"], "description": "Interfaces" },
|
|
18
|
+
{ "pattern": "\\bclass\\s+(\\w+)", "tokenType": "class", "tokenModifiers": ["declaration"], "description": "Class declarations" },
|
|
19
|
+
{ "pattern": "\\binterface\\s+(\\w+)", "tokenType": "interface", "tokenModifiers": ["declaration"], "description": "Interface declarations" },
|
|
20
|
+
{ "pattern": "\\benum\\s+(\\w+)", "tokenType": "enum", "tokenModifiers": ["declaration"], "description": "Enum declarations" },
|
|
21
|
+
{ "pattern": "(?:'[^']*'|\"[^\"]*\"|`[^`]*`)", "tokenType": "string", "tokenModifiers": [], "description": "Strings" },
|
|
22
|
+
{ "pattern": "\\b\\d+(\\.\\d+)?\\b", "tokenType": "number", "tokenModifiers": [], "description": "Numbers" },
|
|
23
|
+
{ "pattern": "(?:^|\\s)\\/\\/.*", "tokenType": "comment", "tokenModifiers": [], "description": "Comments" },
|
|
24
|
+
{ "pattern": "\\b(describe|it|expect|beforeEach|afterEach|Test)\\b", "tokenType": "function", "tokenModifiers": ["defaultLibrary"], "description": "Testing" }
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "nextjs",
|
|
3
|
+
"rangeSemanticTokens": {
|
|
4
|
+
"tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"],
|
|
5
|
+
"tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "async", "modification", "documentation", "defaultLibrary", "abstract"],
|
|
6
|
+
"tokenLegend": {
|
|
7
|
+
"tokenTypes": ["namespace", "type", "class", "enum", "interface", "struct", "typeParameter", "parameter", "variable", "property", "enumMember", "event", "function", "method", "macro", "keyword", "modifier", "comment", "string", "number", "regexp", "operator", "decorator"],
|
|
8
|
+
"tokenModifiers": ["declaration", "definition", "readonly", "static", "deprecated", "async", "modification", "documentation", "defaultLibrary", "abstract"]
|
|
9
|
+
},
|
|
10
|
+
"rangeTokenRules": [
|
|
11
|
+
{ "pattern": "\\b(import|export|from|default|as|const|let|var|function|return|if|else|for|while|switch|case|break|continue|throw|try|catch|finally|new|typeof|instanceof|async|await|class|extends|this)\\b", "tokenType": "keyword", "tokenModifiers": [], "description": "Keywords" },
|
|
12
|
+
{ "pattern": "\\b(use(?:State|Effect|Context|Reducer|Callback|Memo|Ref|Router|Pathname|SearchParams|Params|FormStatus|FormState|Optimistic))\\b", "tokenType": "function", "tokenModifiers": ["defaultLibrary"], "description": "Hooks" },
|
|
13
|
+
{ "pattern": "\\b(Image|Link|Script|Head)\\b", "tokenType": "class", "tokenModifiers": ["defaultLibrary"], "description": "Next.js components" },
|
|
14
|
+
{ "pattern": "\\b(NextRequest|NextResponse|NextPage|Metadata|Viewport)\\b", "tokenType": "type", "tokenModifiers": ["defaultLibrary"], "description": "Next.js types" },
|
|
15
|
+
{ "pattern": "\\b(redirect|notFound|revalidatePath|revalidateTag|headers|cookies|fetch)\\b", "tokenType": "function", "tokenModifiers": ["defaultLibrary"], "description": "Server functions" },
|
|
16
|
+
{ "pattern": "\"use (client|server)\"", "tokenType": "macro", "tokenModifiers": [], "description": "Directives" },
|
|
17
|
+
{ "pattern": "\\bexport\\s+async\\s+function\\s+(GET|POST|PUT|PATCH|DELETE)\\b", "tokenType": "method", "tokenModifiers": ["async"], "description": "Route handlers" },
|
|
18
|
+
{ "pattern": "\\bexport\\s+const\\s+(metadata|revalidate|dynamic|runtime)\\b", "tokenType": "variable", "tokenModifiers": ["readonly"], "description": "Config exports" },
|
|
19
|
+
{ "pattern": "<([A-Z][a-zA-Z0-9.]*)", "tokenType": "class", "tokenModifiers": [], "description": "JSX components" },
|
|
20
|
+
{ "pattern": "\\binterface\\s+(\\w+)", "tokenType": "interface", "tokenModifiers": ["declaration"], "description": "Interfaces" },
|
|
21
|
+
{ "pattern": "\\btype\\s+(\\w+)\\s*=", "tokenType": "type", "tokenModifiers": ["declaration"], "description": "Type aliases" },
|
|
22
|
+
{ "pattern": "\\b(process\\.env\\.\\w+)\\b", "tokenType": "variable", "tokenModifiers": ["readonly"], "description": "Env vars" },
|
|
23
|
+
{ "pattern": "(?:'[^']*'|\"[^\"]*\"|`[^`]*`)", "tokenType": "string", "tokenModifiers": [], "description": "Strings" },
|
|
24
|
+
{ "pattern": "\\b\\d+(\\.\\d+)?\\b", "tokenType": "number", "tokenModifiers": [], "description": "Numbers" },
|
|
25
|
+
{ "pattern": "(?:^|\\s)\\/\\/.*", "tokenType": "comment", "tokenModifiers": [], "description": "Comments" }
|
|
26
|
+
]
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "react",
|
|
3
|
+
"rangeSemanticTokens": {
|
|
4
|
+
"rangeScope": "visible",
|
|
5
|
+
"tokenTypes": [
|
|
6
|
+
"namespace",
|
|
7
|
+
"type",
|
|
8
|
+
"class",
|
|
9
|
+
"enum",
|
|
10
|
+
"interface",
|
|
11
|
+
"struct",
|
|
12
|
+
"typeParameter",
|
|
13
|
+
"parameter",
|
|
14
|
+
"variable",
|
|
15
|
+
"property",
|
|
16
|
+
"enumMember",
|
|
17
|
+
"event",
|
|
18
|
+
"function",
|
|
19
|
+
"method",
|
|
20
|
+
"macro",
|
|
21
|
+
"keyword",
|
|
22
|
+
"modifier",
|
|
23
|
+
"comment",
|
|
24
|
+
"string",
|
|
25
|
+
"number",
|
|
26
|
+
"regexp",
|
|
27
|
+
"operator",
|
|
28
|
+
"decorator"
|
|
29
|
+
],
|
|
30
|
+
"tokenModifiers": [
|
|
31
|
+
"declaration",
|
|
32
|
+
"definition",
|
|
33
|
+
"readonly",
|
|
34
|
+
"static",
|
|
35
|
+
"deprecated",
|
|
36
|
+
"async",
|
|
37
|
+
"modification",
|
|
38
|
+
"documentation",
|
|
39
|
+
"defaultLibrary",
|
|
40
|
+
"local"
|
|
41
|
+
],
|
|
42
|
+
"semanticRules": [
|
|
43
|
+
{
|
|
44
|
+
"pattern": "(?:React|ReactDOM|ReactDOMServer)",
|
|
45
|
+
"tokenType": "namespace",
|
|
46
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
47
|
+
"description": "React namespace identifiers"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"pattern": "(?:Component|PureComponent)",
|
|
51
|
+
"tokenType": "class",
|
|
52
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
53
|
+
"description": "React base classes"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"pattern": "[A-Z][a-zA-Z0-9]*(?=\\s*(?:<[^>]*>)?\\s*(?:=\\s*(?:React\\.)?(?:memo|forwardRef|lazy)\\s*\\(|\\(|:\\s*React\\.FC))",
|
|
57
|
+
"tokenType": "function",
|
|
58
|
+
"tokenModifiers": ["declaration"],
|
|
59
|
+
"description": "React component declarations"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"pattern": "<([A-Z][a-zA-Z0-9.]*)",
|
|
63
|
+
"tokenType": "class",
|
|
64
|
+
"tokenModifiers": [],
|
|
65
|
+
"description": "JSX component tags in usage"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"pattern": "<([a-z][a-z0-9-]*)",
|
|
69
|
+
"tokenType": "keyword",
|
|
70
|
+
"tokenModifiers": [],
|
|
71
|
+
"description": "JSX HTML element tags"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"pattern": "use(?:State|Effect|Context|Reducer|Memo|Callback|Ref|Id|Transition|DeferredValue|SyncExternalStore|InsertionEffect|LayoutEffect|ImperativeHandle|DebugValue|OptimisticState|FormStatus|ActionState)",
|
|
75
|
+
"tokenType": "function",
|
|
76
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
77
|
+
"description": "React built-in hooks"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"pattern": "use[A-Z][a-zA-Z0-9]*",
|
|
81
|
+
"tokenType": "function",
|
|
82
|
+
"tokenModifiers": [],
|
|
83
|
+
"description": "Custom hooks"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"pattern": "(?:className|style|key|ref|dangerouslySetInnerHTML|suppressHydrationWarning|suppressContentEditableWarning)(?=\\s*=)",
|
|
87
|
+
"tokenType": "property",
|
|
88
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
89
|
+
"description": "React-specific JSX attributes"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"pattern": "(?:on[A-Z][a-zA-Z]*)(?=\\s*=)",
|
|
93
|
+
"tokenType": "event",
|
|
94
|
+
"tokenModifiers": [],
|
|
95
|
+
"description": "Event handler props"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"pattern": "(?:aria-[a-z-]+|data-[a-z-]+)(?=\\s*=)",
|
|
99
|
+
"tokenType": "property",
|
|
100
|
+
"tokenModifiers": [],
|
|
101
|
+
"description": "ARIA and data attributes"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"pattern": "(?:interface|type)\\s+([A-Z][a-zA-Z0-9]*(?:Props|State|Context|Config|Options|Params|Result|Data|Response|Payload))",
|
|
105
|
+
"tokenType": "interface",
|
|
106
|
+
"tokenModifiers": ["declaration"],
|
|
107
|
+
"description": "React-related type/interface declarations"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"pattern": "(?:React\\.)?(?:FC|FunctionComponent|ComponentType|ReactNode|ReactElement|JSX\\.Element|PropsWithChildren|HTMLAttributes|RefObject|MutableRefObject|Dispatch|SetStateAction|Context|Reducer|CSSProperties)",
|
|
111
|
+
"tokenType": "type",
|
|
112
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
113
|
+
"description": "React built-in types"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"pattern": "(?:React\\.)?(?:ChangeEvent|FormEvent|MouseEvent|KeyboardEvent|FocusEvent|TouchEvent|PointerEvent|DragEvent|ClipboardEvent|AnimationEvent|TransitionEvent|SyntheticEvent)",
|
|
117
|
+
"tokenType": "type",
|
|
118
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
119
|
+
"description": "React event types"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"pattern": "(?:Fragment|StrictMode|Suspense|Profiler)",
|
|
123
|
+
"tokenType": "class",
|
|
124
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
125
|
+
"description": "React built-in components"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"pattern": "(?:createContext|createElement|cloneElement|createPortal|createRoot|hydrateRoot|forwardRef|memo|lazy|startTransition|flushSync|act)",
|
|
129
|
+
"tokenType": "function",
|
|
130
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
131
|
+
"description": "React API functions"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"pattern": "handle[A-Z][a-zA-Z0-9]*",
|
|
135
|
+
"tokenType": "function",
|
|
136
|
+
"tokenModifiers": ["local"],
|
|
137
|
+
"description": "Event handler functions"
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"pattern": "(?:render|componentDidMount|componentDidUpdate|componentWillUnmount|shouldComponentUpdate|getSnapshotBeforeUpdate|getDerivedStateFromProps|getDerivedStateFromError|componentDidCatch)",
|
|
141
|
+
"tokenType": "method",
|
|
142
|
+
"tokenModifiers": [],
|
|
143
|
+
"description": "React lifecycle methods"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"pattern": "(?:children|props|state|context|refs|defaultProps|displayName|propTypes|contextType|contextTypes)",
|
|
147
|
+
"tokenType": "property",
|
|
148
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
149
|
+
"description": "React component properties"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"pattern": "(?:dispatch|setState|forceUpdate)",
|
|
153
|
+
"tokenType": "method",
|
|
154
|
+
"tokenModifiers": [],
|
|
155
|
+
"description": "State update methods"
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"pattern": "(?:Children\\.map|Children\\.forEach|Children\\.count|Children\\.only|Children\\.toArray)",
|
|
159
|
+
"tokenType": "method",
|
|
160
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
161
|
+
"description": "React.Children utility methods"
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"pattern": "(?:isValidElement|cloneElement|createElement)",
|
|
165
|
+
"tokenType": "function",
|
|
166
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
167
|
+
"description": "React element utility functions"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"pattern": "\\b(?:const|let|var)\\s+([A-Z_][A-Z0-9_]*)\\s*=",
|
|
171
|
+
"tokenType": "variable",
|
|
172
|
+
"tokenModifiers": ["readonly"],
|
|
173
|
+
"description": "Constant declarations (UPPER_CASE)"
|
|
174
|
+
}
|
|
175
|
+
],
|
|
176
|
+
"legend": {
|
|
177
|
+
"tokenTypes": [
|
|
178
|
+
"namespace",
|
|
179
|
+
"type",
|
|
180
|
+
"class",
|
|
181
|
+
"enum",
|
|
182
|
+
"interface",
|
|
183
|
+
"struct",
|
|
184
|
+
"typeParameter",
|
|
185
|
+
"parameter",
|
|
186
|
+
"variable",
|
|
187
|
+
"property",
|
|
188
|
+
"enumMember",
|
|
189
|
+
"event",
|
|
190
|
+
"function",
|
|
191
|
+
"method",
|
|
192
|
+
"macro",
|
|
193
|
+
"keyword",
|
|
194
|
+
"modifier",
|
|
195
|
+
"comment",
|
|
196
|
+
"string",
|
|
197
|
+
"number",
|
|
198
|
+
"regexp",
|
|
199
|
+
"operator",
|
|
200
|
+
"decorator"
|
|
201
|
+
],
|
|
202
|
+
"tokenModifiers": [
|
|
203
|
+
"declaration",
|
|
204
|
+
"definition",
|
|
205
|
+
"readonly",
|
|
206
|
+
"static",
|
|
207
|
+
"deprecated",
|
|
208
|
+
"async",
|
|
209
|
+
"modification",
|
|
210
|
+
"documentation",
|
|
211
|
+
"defaultLibrary",
|
|
212
|
+
"local"
|
|
213
|
+
]
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "shadcn",
|
|
3
|
+
"tokenTypes": [
|
|
4
|
+
"namespace",
|
|
5
|
+
"type",
|
|
6
|
+
"class",
|
|
7
|
+
"enum",
|
|
8
|
+
"interface",
|
|
9
|
+
"struct",
|
|
10
|
+
"typeParameter",
|
|
11
|
+
"parameter",
|
|
12
|
+
"variable",
|
|
13
|
+
"property",
|
|
14
|
+
"enumMember",
|
|
15
|
+
"event",
|
|
16
|
+
"function",
|
|
17
|
+
"method",
|
|
18
|
+
"macro",
|
|
19
|
+
"keyword",
|
|
20
|
+
"modifier",
|
|
21
|
+
"comment",
|
|
22
|
+
"string",
|
|
23
|
+
"number",
|
|
24
|
+
"regexp",
|
|
25
|
+
"operator",
|
|
26
|
+
"decorator"
|
|
27
|
+
],
|
|
28
|
+
"tokenModifiers": [
|
|
29
|
+
"declaration",
|
|
30
|
+
"definition",
|
|
31
|
+
"readonly",
|
|
32
|
+
"static",
|
|
33
|
+
"deprecated",
|
|
34
|
+
"abstract",
|
|
35
|
+
"async",
|
|
36
|
+
"modification",
|
|
37
|
+
"documentation",
|
|
38
|
+
"defaultLibrary"
|
|
39
|
+
],
|
|
40
|
+
"rangeTokenRules": [
|
|
41
|
+
{
|
|
42
|
+
"pattern": "<([A-Z][a-zA-Z0-9]*)[\\s\\S]*?(?:<\\/\\1>|\\/>)",
|
|
43
|
+
"tokenType": "class",
|
|
44
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
45
|
+
"scope": "block",
|
|
46
|
+
"description": "Tokenize shadcn/ui component JSX blocks including children"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"pattern": "\\bcva\\s*\\([\\s\\S]*?\\)\\s*;?",
|
|
50
|
+
"tokenType": "function",
|
|
51
|
+
"tokenModifiers": ["defaultLibrary", "definition"],
|
|
52
|
+
"scope": "block",
|
|
53
|
+
"description": "Tokenize entire cva() definition blocks with base and variants"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"pattern": "^import\\s[\\s\\S]*?from\\s+[\"'][^\"']+[\"'];?$",
|
|
57
|
+
"tokenType": "namespace",
|
|
58
|
+
"tokenModifiers": [],
|
|
59
|
+
"scope": "line",
|
|
60
|
+
"description": "Tokenize import statement lines"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"pattern": "(?:function|const)\\s+([a-z][a-zA-Z0-9]*)\\s*(?:=\\s*(?:async\\s*)?\\([\\s\\S]*?\\)\\s*=>|\\([\\s\\S]*?\\))\\s*\\{[\\s\\S]*?\\}",
|
|
64
|
+
"tokenType": "function",
|
|
65
|
+
"tokenModifiers": ["definition"],
|
|
66
|
+
"scope": "block",
|
|
67
|
+
"description": "Tokenize utility function and custom hook definition blocks"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"pattern": "(?:const\\s+\\w+Schema|z\\.object)\\s*(?:=\\s*)?\\(?\\s*\\{[\\s\\S]*?\\}\\s*\\)?",
|
|
71
|
+
"tokenType": "variable",
|
|
72
|
+
"tokenModifiers": ["declaration", "readonly"],
|
|
73
|
+
"scope": "block",
|
|
74
|
+
"description": "Tokenize Zod form schema definition blocks"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"pattern": "(?:const\\s+)?columns\\s*(?::\\s*ColumnDef[^=]*)?=\\s*\\[[\\s\\S]*?\\]",
|
|
78
|
+
"tokenType": "variable",
|
|
79
|
+
"tokenModifiers": ["declaration", "readonly"],
|
|
80
|
+
"scope": "block",
|
|
81
|
+
"description": "Tokenize column definition array blocks for DataTable"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"pattern": "(?:interface|type)\\s+[A-Z][a-zA-Z0-9]*(?:<[^>]*>)?\\s*(?:=\\s*)?\\{[\\s\\S]*?\\}",
|
|
85
|
+
"tokenType": "interface",
|
|
86
|
+
"tokenModifiers": ["declaration"],
|
|
87
|
+
"scope": "block",
|
|
88
|
+
"description": "Tokenize TypeScript interface and type definition blocks"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"pattern": "className\\s*=\\s*\\{?\\s*cn\\([\\s\\S]*?\\)\\s*\\}?",
|
|
92
|
+
"tokenType": "function",
|
|
93
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
94
|
+
"scope": "line",
|
|
95
|
+
"description": "Tokenize className expressions using cn() utility"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"pattern": "variants\\s*:\\s*\\{[\\s\\S]*?\\}(?=\\s*[,}])",
|
|
99
|
+
"tokenType": "property",
|
|
100
|
+
"tokenModifiers": ["definition"],
|
|
101
|
+
"scope": "block",
|
|
102
|
+
"description": "Tokenize variant objects within cva configuration"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"pattern": "(?<=<[A-Z][a-zA-Z0-9]*)\\s+[a-zA-Z][a-zA-Z0-9]*\\s*=\\s*(?:\\{[^}]*\\}|\"[^\"]*\"|'[^']*')",
|
|
106
|
+
"tokenType": "property",
|
|
107
|
+
"tokenModifiers": [],
|
|
108
|
+
"scope": "line",
|
|
109
|
+
"description": "Tokenize JSX attribute assignments on components"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"pattern": "React\\.forwardRef\\s*(?:<[^>]*>)?\\s*\\([\\s\\S]*?\\)\\s*;?",
|
|
113
|
+
"tokenType": "function",
|
|
114
|
+
"tokenModifiers": ["defaultLibrary", "definition"],
|
|
115
|
+
"scope": "block",
|
|
116
|
+
"description": "Tokenize React.forwardRef wrapper blocks"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"pattern": "\\b(?:describe|it|test)\\s*\\([\\s\\S]*?\\}\\s*\\)",
|
|
120
|
+
"tokenType": "function",
|
|
121
|
+
"tokenModifiers": [],
|
|
122
|
+
"scope": "block",
|
|
123
|
+
"description": "Tokenize test describe/it/test blocks"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"pattern": "<FormField[\\s\\S]*?(?:<\\/FormField>|\\/>)",
|
|
127
|
+
"tokenType": "class",
|
|
128
|
+
"tokenModifiers": ["defaultLibrary"],
|
|
129
|
+
"scope": "block",
|
|
130
|
+
"description": "Tokenize FormField component blocks with render props"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"pattern": "(?:function|const)\\s+([A-Z][a-zA-Z0-9]*)\\s*(?:=\\s*(?:React\\.forwardRef|\\()|\\()[\\s\\S]*?(?:^\\}\\s*\\)?\\s*;?$)",
|
|
134
|
+
"tokenType": "class",
|
|
135
|
+
"tokenModifiers": ["declaration", "definition"],
|
|
136
|
+
"scope": "block",
|
|
137
|
+
"description": "Tokenize full component definition blocks"
|
|
138
|
+
}
|
|
139
|
+
]
|
|
140
|
+
}
|