@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,115 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "tailwindcss",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"@tailwind": {
|
|
5
|
+
"signature": "@tailwind base | components | utilities | variants",
|
|
6
|
+
"description": "Directive to inject Tailwind's generated styles into your CSS. Each layer can be included independently.",
|
|
7
|
+
"type": "directive"
|
|
8
|
+
},
|
|
9
|
+
"@apply": {
|
|
10
|
+
"signature": "@apply {utility-classes...};",
|
|
11
|
+
"description": "Inline existing Tailwind utility classes into custom CSS rules. Enables reusing utility-first patterns in component styles.",
|
|
12
|
+
"type": "directive"
|
|
13
|
+
},
|
|
14
|
+
"@layer": {
|
|
15
|
+
"signature": "@layer base | components | utilities { ... }",
|
|
16
|
+
"description": "Tells Tailwind which layer a set of custom styles belongs to. Valid layers: base, components, utilities.",
|
|
17
|
+
"type": "directive"
|
|
18
|
+
},
|
|
19
|
+
"@config": {
|
|
20
|
+
"signature": "@config '{path}';",
|
|
21
|
+
"description": "Specifies which Tailwind config file to use for a CSS file. Useful in monorepos with multiple configs.",
|
|
22
|
+
"type": "directive"
|
|
23
|
+
},
|
|
24
|
+
"theme()": {
|
|
25
|
+
"signature": "theme('{dotPath}' [, '{defaultValue}'])",
|
|
26
|
+
"description": "Access Tailwind theme values in CSS. E.g. `theme('colors.blue.500')` returns `#3b82f6`. Supports dot notation for nested values.",
|
|
27
|
+
"type": "function"
|
|
28
|
+
},
|
|
29
|
+
"screen()": {
|
|
30
|
+
"signature": "screen('{breakpoint}')",
|
|
31
|
+
"description": "Reference responsive breakpoints by name in media queries. E.g. `@media screen('md')` compiles to `@media (min-width: 768px)`.",
|
|
32
|
+
"type": "function"
|
|
33
|
+
},
|
|
34
|
+
"container": {
|
|
35
|
+
"signature": "container",
|
|
36
|
+
"description": "A component class that sets width: 100% and applies responsive max-width at each breakpoint (sm: 640px, md: 768px, lg: 1024px, xl: 1280px, 2xl: 1536px).",
|
|
37
|
+
"type": "utility"
|
|
38
|
+
},
|
|
39
|
+
"sm": {
|
|
40
|
+
"signature": "sm:{utility}",
|
|
41
|
+
"description": "Responsive prefix applying styles at min-width: 640px. Mobile-first breakpoint.",
|
|
42
|
+
"type": "breakpoint"
|
|
43
|
+
},
|
|
44
|
+
"md": {
|
|
45
|
+
"signature": "md:{utility}",
|
|
46
|
+
"description": "Responsive prefix applying styles at min-width: 768px.",
|
|
47
|
+
"type": "breakpoint"
|
|
48
|
+
},
|
|
49
|
+
"lg": {
|
|
50
|
+
"signature": "lg:{utility}",
|
|
51
|
+
"description": "Responsive prefix applying styles at min-width: 1024px.",
|
|
52
|
+
"type": "breakpoint"
|
|
53
|
+
},
|
|
54
|
+
"xl": {
|
|
55
|
+
"signature": "xl:{utility}",
|
|
56
|
+
"description": "Responsive prefix applying styles at min-width: 1280px.",
|
|
57
|
+
"type": "breakpoint"
|
|
58
|
+
},
|
|
59
|
+
"2xl": {
|
|
60
|
+
"signature": "2xl:{utility}",
|
|
61
|
+
"description": "Responsive prefix applying styles at min-width: 1536px.",
|
|
62
|
+
"type": "breakpoint"
|
|
63
|
+
},
|
|
64
|
+
"arbitrary-values": {
|
|
65
|
+
"signature": "{property}-[{value}]",
|
|
66
|
+
"description": "Use arbitrary values with square bracket notation for one-off styles. E.g. `w-[200px]`, `bg-[#1da1f2]`, `grid-cols-[1fr_2fr]`.",
|
|
67
|
+
"type": "syntax"
|
|
68
|
+
},
|
|
69
|
+
"important-modifier": {
|
|
70
|
+
"signature": "!{utility}",
|
|
71
|
+
"description": "Prefix any utility with `!` to generate the style with `!important`. E.g. `!p-4` → `padding: 1rem !important`.",
|
|
72
|
+
"type": "modifier"
|
|
73
|
+
},
|
|
74
|
+
"dark-mode": {
|
|
75
|
+
"signature": "dark:{utility}",
|
|
76
|
+
"description": "Applies styles when dark mode is active. Controlled by `darkMode` option in config: 'media' (prefers-color-scheme) or 'class' (.dark parent).",
|
|
77
|
+
"type": "variant"
|
|
78
|
+
},
|
|
79
|
+
"group": {
|
|
80
|
+
"signature": "group / group-hover: / group-focus:",
|
|
81
|
+
"description": "Mark a parent with `group` class and style children with `group-{state}:` variants. Children respond to parent hover/focus/active states.",
|
|
82
|
+
"type": "variant"
|
|
83
|
+
},
|
|
84
|
+
"peer": {
|
|
85
|
+
"signature": "peer / peer-hover: / peer-focus: / peer-checked:",
|
|
86
|
+
"description": "Mark a sibling with `peer` class and use `peer-{state}:` on subsequent siblings. Enables sibling-based conditional styling.",
|
|
87
|
+
"type": "variant"
|
|
88
|
+
},
|
|
89
|
+
"jit-mode": {
|
|
90
|
+
"signature": "mode: 'jit'",
|
|
91
|
+
"description": "Just-In-Time compilation mode generates styles on demand. Default in Tailwind CSS v3+. Enables arbitrary values, all variants, and faster build times.",
|
|
92
|
+
"type": "configuration"
|
|
93
|
+
},
|
|
94
|
+
"utility-class": {
|
|
95
|
+
"signature": "{property}-{value}",
|
|
96
|
+
"description": "Tailwind utility classes follow a `{property}-{value}` pattern. The property maps to a CSS property and the value maps to a design token from the theme configuration.",
|
|
97
|
+
"type": "concept"
|
|
98
|
+
},
|
|
99
|
+
"negative-values": {
|
|
100
|
+
"signature": "-{utility}-{value}",
|
|
101
|
+
"description": "Prefix utilities with `-` for negative values. E.g. `-m-4` → `margin: -1rem`, `-translate-x-full` → `transform: translateX(-100%)`.",
|
|
102
|
+
"type": "syntax"
|
|
103
|
+
},
|
|
104
|
+
"tailwind-config": {
|
|
105
|
+
"signature": "tailwind.config.js",
|
|
106
|
+
"description": "Configuration file for customizing Tailwind: theme (colors, spacing, fonts), plugins, content paths, dark mode, prefix, important, and variant order.",
|
|
107
|
+
"type": "configuration"
|
|
108
|
+
},
|
|
109
|
+
"content-configuration": {
|
|
110
|
+
"signature": "content: ['{paths}']",
|
|
111
|
+
"description": "Specifies file paths for Tailwind to scan for class names. Required for tree-shaking unused styles. Supports glob patterns.",
|
|
112
|
+
"type": "configuration"
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
@@ -0,0 +1,414 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "angular",
|
|
3
|
+
"highlights": {
|
|
4
|
+
"@Component": {
|
|
5
|
+
"kind": 0,
|
|
6
|
+
"description": "Highlights Angular @Component decorator"
|
|
7
|
+
},
|
|
8
|
+
"@NgModule": {
|
|
9
|
+
"kind": 0,
|
|
10
|
+
"description": "Highlights Angular @NgModule decorator"
|
|
11
|
+
},
|
|
12
|
+
"@Injectable": {
|
|
13
|
+
"kind": 0,
|
|
14
|
+
"description": "Highlights Angular @Injectable decorator"
|
|
15
|
+
},
|
|
16
|
+
"@Directive": {
|
|
17
|
+
"kind": 0,
|
|
18
|
+
"description": "Highlights Angular @Directive decorator"
|
|
19
|
+
},
|
|
20
|
+
"@Pipe": {
|
|
21
|
+
"kind": 0,
|
|
22
|
+
"description": "Highlights Angular @Pipe decorator"
|
|
23
|
+
},
|
|
24
|
+
"@Input": {
|
|
25
|
+
"kind": 0,
|
|
26
|
+
"description": "Highlights Angular @Input decorator"
|
|
27
|
+
},
|
|
28
|
+
"@Output": {
|
|
29
|
+
"kind": 0,
|
|
30
|
+
"description": "Highlights Angular @Output decorator"
|
|
31
|
+
},
|
|
32
|
+
"@ViewChild": {
|
|
33
|
+
"kind": 0,
|
|
34
|
+
"description": "Highlights Angular @ViewChild decorator"
|
|
35
|
+
},
|
|
36
|
+
"@ViewChildren": {
|
|
37
|
+
"kind": 0,
|
|
38
|
+
"description": "Highlights Angular @ViewChildren decorator"
|
|
39
|
+
},
|
|
40
|
+
"@ContentChild": {
|
|
41
|
+
"kind": 0,
|
|
42
|
+
"description": "Highlights Angular @ContentChild decorator"
|
|
43
|
+
},
|
|
44
|
+
"@ContentChildren": {
|
|
45
|
+
"kind": 0,
|
|
46
|
+
"description": "Highlights Angular @ContentChildren decorator"
|
|
47
|
+
},
|
|
48
|
+
"@HostBinding": {
|
|
49
|
+
"kind": 0,
|
|
50
|
+
"description": "Highlights Angular @HostBinding decorator"
|
|
51
|
+
},
|
|
52
|
+
"@HostListener": {
|
|
53
|
+
"kind": 0,
|
|
54
|
+
"description": "Highlights Angular @HostListener decorator"
|
|
55
|
+
},
|
|
56
|
+
"@Inject": {
|
|
57
|
+
"kind": 0,
|
|
58
|
+
"description": "Highlights Angular @Inject decorator"
|
|
59
|
+
},
|
|
60
|
+
"@Optional": {
|
|
61
|
+
"kind": 0,
|
|
62
|
+
"description": "Highlights Angular @Optional decorator"
|
|
63
|
+
},
|
|
64
|
+
"@Self": {
|
|
65
|
+
"kind": 0,
|
|
66
|
+
"description": "Highlights Angular @Self decorator"
|
|
67
|
+
},
|
|
68
|
+
"@SkipSelf": {
|
|
69
|
+
"kind": 0,
|
|
70
|
+
"description": "Highlights Angular @SkipSelf decorator"
|
|
71
|
+
},
|
|
72
|
+
"@Host": {
|
|
73
|
+
"kind": 0,
|
|
74
|
+
"description": "Highlights Angular @Host decorator"
|
|
75
|
+
},
|
|
76
|
+
"ngOnInit": {
|
|
77
|
+
"kind": 0,
|
|
78
|
+
"description": "Highlights ngOnInit lifecycle hook"
|
|
79
|
+
},
|
|
80
|
+
"ngOnDestroy": {
|
|
81
|
+
"kind": 0,
|
|
82
|
+
"description": "Highlights ngOnDestroy lifecycle hook"
|
|
83
|
+
},
|
|
84
|
+
"ngOnChanges": {
|
|
85
|
+
"kind": 0,
|
|
86
|
+
"description": "Highlights ngOnChanges lifecycle hook"
|
|
87
|
+
},
|
|
88
|
+
"ngAfterViewInit": {
|
|
89
|
+
"kind": 0,
|
|
90
|
+
"description": "Highlights ngAfterViewInit lifecycle hook"
|
|
91
|
+
},
|
|
92
|
+
"ngAfterContentInit": {
|
|
93
|
+
"kind": 0,
|
|
94
|
+
"description": "Highlights ngAfterContentInit lifecycle hook"
|
|
95
|
+
},
|
|
96
|
+
"ngDoCheck": {
|
|
97
|
+
"kind": 0,
|
|
98
|
+
"description": "Highlights ngDoCheck lifecycle hook"
|
|
99
|
+
},
|
|
100
|
+
"ngAfterViewChecked": {
|
|
101
|
+
"kind": 0,
|
|
102
|
+
"description": "Highlights ngAfterViewChecked lifecycle hook"
|
|
103
|
+
},
|
|
104
|
+
"ngAfterContentChecked": {
|
|
105
|
+
"kind": 0,
|
|
106
|
+
"description": "Highlights ngAfterContentChecked lifecycle hook"
|
|
107
|
+
},
|
|
108
|
+
"@if": {
|
|
109
|
+
"kind": 0,
|
|
110
|
+
"description": "Highlights @if control flow block"
|
|
111
|
+
},
|
|
112
|
+
"@else": {
|
|
113
|
+
"kind": 0,
|
|
114
|
+
"description": "Highlights @else control flow block"
|
|
115
|
+
},
|
|
116
|
+
"@for": {
|
|
117
|
+
"kind": 0,
|
|
118
|
+
"description": "Highlights @for control flow block"
|
|
119
|
+
},
|
|
120
|
+
"@switch": {
|
|
121
|
+
"kind": 0,
|
|
122
|
+
"description": "Highlights @switch control flow block"
|
|
123
|
+
},
|
|
124
|
+
"@case": {
|
|
125
|
+
"kind": 0,
|
|
126
|
+
"description": "Highlights @case control flow block"
|
|
127
|
+
},
|
|
128
|
+
"@default": {
|
|
129
|
+
"kind": 0,
|
|
130
|
+
"description": "Highlights @default control flow block"
|
|
131
|
+
},
|
|
132
|
+
"@defer": {
|
|
133
|
+
"kind": 0,
|
|
134
|
+
"description": "Highlights @defer deferrable view block"
|
|
135
|
+
},
|
|
136
|
+
"@loading": {
|
|
137
|
+
"kind": 0,
|
|
138
|
+
"description": "Highlights @loading deferred view block"
|
|
139
|
+
},
|
|
140
|
+
"@placeholder": {
|
|
141
|
+
"kind": 0,
|
|
142
|
+
"description": "Highlights @placeholder deferred view block"
|
|
143
|
+
},
|
|
144
|
+
"@error": {
|
|
145
|
+
"kind": 0,
|
|
146
|
+
"description": "Highlights @error deferred view block"
|
|
147
|
+
},
|
|
148
|
+
"@empty": {
|
|
149
|
+
"kind": 0,
|
|
150
|
+
"description": "Highlights @empty control flow block"
|
|
151
|
+
},
|
|
152
|
+
"@let": {
|
|
153
|
+
"kind": 0,
|
|
154
|
+
"description": "Highlights @let template variable declaration"
|
|
155
|
+
},
|
|
156
|
+
"signal": {
|
|
157
|
+
"kind": 1,
|
|
158
|
+
"description": "Highlights signal() reactive primitive function"
|
|
159
|
+
},
|
|
160
|
+
"computed": {
|
|
161
|
+
"kind": 1,
|
|
162
|
+
"description": "Highlights computed() derived signal function"
|
|
163
|
+
},
|
|
164
|
+
"effect": {
|
|
165
|
+
"kind": 1,
|
|
166
|
+
"description": "Highlights effect() side-effect function"
|
|
167
|
+
},
|
|
168
|
+
"input": {
|
|
169
|
+
"kind": 1,
|
|
170
|
+
"description": "Highlights signal-based input() function"
|
|
171
|
+
},
|
|
172
|
+
"output": {
|
|
173
|
+
"kind": 1,
|
|
174
|
+
"description": "Highlights signal-based output() function"
|
|
175
|
+
},
|
|
176
|
+
"model": {
|
|
177
|
+
"kind": 1,
|
|
178
|
+
"description": "Highlights signal-based model() function"
|
|
179
|
+
},
|
|
180
|
+
"viewChild": {
|
|
181
|
+
"kind": 1,
|
|
182
|
+
"description": "Highlights signal-based viewChild() query"
|
|
183
|
+
},
|
|
184
|
+
"viewChildren": {
|
|
185
|
+
"kind": 1,
|
|
186
|
+
"description": "Highlights signal-based viewChildren() query"
|
|
187
|
+
},
|
|
188
|
+
"contentChild": {
|
|
189
|
+
"kind": 1,
|
|
190
|
+
"description": "Highlights signal-based contentChild() query"
|
|
191
|
+
},
|
|
192
|
+
"contentChildren": {
|
|
193
|
+
"kind": 1,
|
|
194
|
+
"description": "Highlights signal-based contentChildren() query"
|
|
195
|
+
},
|
|
196
|
+
"linkedSignal": {
|
|
197
|
+
"kind": 1,
|
|
198
|
+
"description": "Highlights linkedSignal() function"
|
|
199
|
+
},
|
|
200
|
+
"resource": {
|
|
201
|
+
"kind": 1,
|
|
202
|
+
"description": "Highlights resource() async data loading function"
|
|
203
|
+
},
|
|
204
|
+
"toSignal": {
|
|
205
|
+
"kind": 1,
|
|
206
|
+
"description": "Highlights toSignal() Observable-to-Signal converter"
|
|
207
|
+
},
|
|
208
|
+
"toObservable": {
|
|
209
|
+
"kind": 1,
|
|
210
|
+
"description": "Highlights toObservable() Signal-to-Observable converter"
|
|
211
|
+
},
|
|
212
|
+
"inject": {
|
|
213
|
+
"kind": 1,
|
|
214
|
+
"description": "Highlights inject() dependency injection function"
|
|
215
|
+
},
|
|
216
|
+
"standalone": {
|
|
217
|
+
"kind": 2,
|
|
218
|
+
"description": "Highlights standalone component/directive/pipe flag"
|
|
219
|
+
},
|
|
220
|
+
"selector": {
|
|
221
|
+
"kind": 2,
|
|
222
|
+
"description": "Highlights component/directive selector metadata"
|
|
223
|
+
},
|
|
224
|
+
"templateUrl": {
|
|
225
|
+
"kind": 2,
|
|
226
|
+
"description": "Highlights component template URL reference"
|
|
227
|
+
},
|
|
228
|
+
"styleUrls": {
|
|
229
|
+
"kind": 2,
|
|
230
|
+
"description": "Highlights component style URLs reference"
|
|
231
|
+
},
|
|
232
|
+
"providers": {
|
|
233
|
+
"kind": 2,
|
|
234
|
+
"description": "Highlights providers array in metadata"
|
|
235
|
+
},
|
|
236
|
+
"imports": {
|
|
237
|
+
"kind": 2,
|
|
238
|
+
"description": "Highlights imports array in metadata"
|
|
239
|
+
},
|
|
240
|
+
"declarations": {
|
|
241
|
+
"kind": 2,
|
|
242
|
+
"description": "Highlights declarations array in NgModule metadata"
|
|
243
|
+
},
|
|
244
|
+
"exports": {
|
|
245
|
+
"kind": 2,
|
|
246
|
+
"description": "Highlights exports array in metadata"
|
|
247
|
+
},
|
|
248
|
+
"bootstrap": {
|
|
249
|
+
"kind": 2,
|
|
250
|
+
"description": "Highlights bootstrap array in NgModule metadata"
|
|
251
|
+
},
|
|
252
|
+
"*ngIf": {
|
|
253
|
+
"kind": 0,
|
|
254
|
+
"description": "Highlights *ngIf structural directive"
|
|
255
|
+
},
|
|
256
|
+
"*ngFor": {
|
|
257
|
+
"kind": 0,
|
|
258
|
+
"description": "Highlights *ngFor structural directive"
|
|
259
|
+
},
|
|
260
|
+
"ngSwitch": {
|
|
261
|
+
"kind": 0,
|
|
262
|
+
"description": "Highlights ngSwitch directive"
|
|
263
|
+
},
|
|
264
|
+
"ngClass": {
|
|
265
|
+
"kind": 0,
|
|
266
|
+
"description": "Highlights ngClass directive"
|
|
267
|
+
},
|
|
268
|
+
"ngStyle": {
|
|
269
|
+
"kind": 0,
|
|
270
|
+
"description": "Highlights ngStyle directive"
|
|
271
|
+
},
|
|
272
|
+
"ngModel": {
|
|
273
|
+
"kind": 0,
|
|
274
|
+
"description": "Highlights ngModel two-way binding directive"
|
|
275
|
+
},
|
|
276
|
+
"routerLink": {
|
|
277
|
+
"kind": 0,
|
|
278
|
+
"description": "Highlights routerLink directive"
|
|
279
|
+
},
|
|
280
|
+
"routerLinkActive": {
|
|
281
|
+
"kind": 0,
|
|
282
|
+
"description": "Highlights routerLinkActive directive"
|
|
283
|
+
},
|
|
284
|
+
"formControlName": {
|
|
285
|
+
"kind": 0,
|
|
286
|
+
"description": "Highlights reactive form control name binding"
|
|
287
|
+
},
|
|
288
|
+
"formGroupName": {
|
|
289
|
+
"kind": 0,
|
|
290
|
+
"description": "Highlights reactive form group name binding"
|
|
291
|
+
},
|
|
292
|
+
"formGroup": {
|
|
293
|
+
"kind": 0,
|
|
294
|
+
"description": "Highlights reactive form group binding"
|
|
295
|
+
}
|
|
296
|
+
},
|
|
297
|
+
"bracketPairs": [
|
|
298
|
+
{
|
|
299
|
+
"open": "(",
|
|
300
|
+
"close": ")"
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"open": "[",
|
|
304
|
+
"close": "]"
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"open": "{",
|
|
308
|
+
"close": "}"
|
|
309
|
+
},
|
|
310
|
+
{
|
|
311
|
+
"open": "<",
|
|
312
|
+
"close": ">"
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
"open": "{{",
|
|
316
|
+
"close": "}}"
|
|
317
|
+
}
|
|
318
|
+
],
|
|
319
|
+
"keywordGroups": [
|
|
320
|
+
{
|
|
321
|
+
"name": "decorators",
|
|
322
|
+
"keywords": [
|
|
323
|
+
"@Component",
|
|
324
|
+
"@NgModule",
|
|
325
|
+
"@Injectable",
|
|
326
|
+
"@Directive",
|
|
327
|
+
"@Pipe",
|
|
328
|
+
"@Input",
|
|
329
|
+
"@Output",
|
|
330
|
+
"@ViewChild",
|
|
331
|
+
"@ViewChildren",
|
|
332
|
+
"@ContentChild",
|
|
333
|
+
"@ContentChildren",
|
|
334
|
+
"@HostBinding",
|
|
335
|
+
"@HostListener",
|
|
336
|
+
"@Inject",
|
|
337
|
+
"@Optional",
|
|
338
|
+
"@Self",
|
|
339
|
+
"@SkipSelf",
|
|
340
|
+
"@Host"
|
|
341
|
+
],
|
|
342
|
+
"highlightKind": 0
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
"name": "lifecycle_hooks",
|
|
346
|
+
"keywords": [
|
|
347
|
+
"ngOnInit",
|
|
348
|
+
"ngOnDestroy",
|
|
349
|
+
"ngOnChanges",
|
|
350
|
+
"ngAfterViewInit",
|
|
351
|
+
"ngAfterContentInit",
|
|
352
|
+
"ngDoCheck",
|
|
353
|
+
"ngAfterViewChecked",
|
|
354
|
+
"ngAfterContentChecked"
|
|
355
|
+
],
|
|
356
|
+
"highlightKind": 0
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
"name": "control_flow",
|
|
360
|
+
"keywords": [
|
|
361
|
+
"@if",
|
|
362
|
+
"@else",
|
|
363
|
+
"@for",
|
|
364
|
+
"@switch",
|
|
365
|
+
"@case",
|
|
366
|
+
"@default",
|
|
367
|
+
"@defer",
|
|
368
|
+
"@loading",
|
|
369
|
+
"@placeholder",
|
|
370
|
+
"@error",
|
|
371
|
+
"@empty",
|
|
372
|
+
"@let"
|
|
373
|
+
],
|
|
374
|
+
"highlightKind": 0
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
"name": "structural_directives",
|
|
378
|
+
"keywords": [
|
|
379
|
+
"*ngIf",
|
|
380
|
+
"*ngFor",
|
|
381
|
+
"ngSwitch",
|
|
382
|
+
"ngClass",
|
|
383
|
+
"ngStyle",
|
|
384
|
+
"ngModel",
|
|
385
|
+
"routerLink",
|
|
386
|
+
"routerLinkActive",
|
|
387
|
+
"formControlName",
|
|
388
|
+
"formGroupName",
|
|
389
|
+
"formGroup"
|
|
390
|
+
],
|
|
391
|
+
"highlightKind": 0
|
|
392
|
+
},
|
|
393
|
+
{
|
|
394
|
+
"name": "signal_api",
|
|
395
|
+
"keywords": [
|
|
396
|
+
"signal",
|
|
397
|
+
"computed",
|
|
398
|
+
"effect",
|
|
399
|
+
"input",
|
|
400
|
+
"output",
|
|
401
|
+
"model",
|
|
402
|
+
"viewChild",
|
|
403
|
+
"viewChildren",
|
|
404
|
+
"contentChild",
|
|
405
|
+
"contentChildren",
|
|
406
|
+
"linkedSignal",
|
|
407
|
+
"resource",
|
|
408
|
+
"toSignal",
|
|
409
|
+
"toObservable"
|
|
410
|
+
],
|
|
411
|
+
"highlightKind": 1
|
|
412
|
+
}
|
|
413
|
+
]
|
|
414
|
+
}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
{
|
|
2
|
+
"language": "css",
|
|
3
|
+
"highlightPatterns": [
|
|
4
|
+
{
|
|
5
|
+
"pattern": "([a-z-]+)\\s*(?=:)",
|
|
6
|
+
"kind": "text",
|
|
7
|
+
"description": "CSS property names. Highlights declarations like display, margin, padding, color, background, etc."
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"pattern": "([.#]?[a-zA-Z_][a-zA-Z0-9_-]*)\\s*(?=[{,>+~:\\[\\s])",
|
|
11
|
+
"kind": "text",
|
|
12
|
+
"description": "CSS selector names. Highlights class (.name), ID (#name), and element (tag) selectors."
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"pattern": "var\\(\\s*(--(([a-zA-Z_][a-zA-Z0-9_-]*)))\\s*(?:,\\s*[^)]*)?\\)",
|
|
16
|
+
"kind": "read",
|
|
17
|
+
"description": "CSS custom property references. Highlights var(--name) usages to show where variables are consumed."
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"pattern": "--(([a-zA-Z_][a-zA-Z0-9_-]*))\\s*:",
|
|
21
|
+
"kind": "write",
|
|
22
|
+
"description": "CSS custom property definitions. Highlights --property-name declarations to show where variables are assigned."
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"pattern": "@(media|keyframes|supports|layer|container|font-face|import|charset|namespace|page|counter-style|property)\\b",
|
|
26
|
+
"kind": "text",
|
|
27
|
+
"description": "CSS at-rule keywords. Highlights @-prefixed rule identifiers."
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"pattern": "#([0-9a-fA-F]{3,8})\\b|\\b(rgb|rgba|hsl|hsla|oklch|lab|lch|color)\\(",
|
|
31
|
+
"kind": "text",
|
|
32
|
+
"description": "CSS color values. Highlights hex colors and color function invocations."
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"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))\\b",
|
|
36
|
+
"kind": "text",
|
|
37
|
+
"description": "CSS pseudo-class selectors. Highlights state-based and structural pseudo-classes."
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"pattern": "(::?(before|after|first-line|first-letter|selection|placeholder|marker|backdrop|file-selector-button|cue|part|slotted))\\b",
|
|
41
|
+
"kind": "text",
|
|
42
|
+
"description": "CSS pseudo-element selectors. Highlights virtual elements that style specific parts of an element."
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"pattern": "\\b(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|color-mix|light-dark|round|mod|rem|abs|sign|sin|cos|tan|asin|acos|atan|atan2|pow|sqrt|hypot|log|exp)\\s*\\(",
|
|
46
|
+
"kind": "text",
|
|
47
|
+
"description": "CSS function calls. Highlights built-in CSS functions including math, color, and layout functions."
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"pattern": "\\b(\\d+(\\.\\d+)?)(px|em|rem|%|vh|vw|vmin|vmax|dvh|dvw|svh|svw|lvh|lvw|ch|ex|cap|lh|rlh|cqi|cqb|cqw|cqh|cqmin|cqmax|fr|s|ms|deg|rad|grad|turn)\\b",
|
|
51
|
+
"kind": "text",
|
|
52
|
+
"description": "CSS numeric values with units. Highlights lengths, percentages, viewport units, container query units, time, and angle values."
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"pattern": "!important\\b",
|
|
56
|
+
"kind": "write",
|
|
57
|
+
"description": "CSS !important declarations. Uses write kind to emphasize the override significance."
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"pattern": "&\\s*(?=[.#:\\[>+~{ ])",
|
|
61
|
+
"kind": "text",
|
|
62
|
+
"description": "CSS nesting selector. Highlights the & reference to the parent selector in native CSS nesting."
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"pattern": "@layer\\s+([a-zA-Z_][a-zA-Z0-9_.-]*)",
|
|
66
|
+
"kind": "text",
|
|
67
|
+
"description": "CSS @layer names. Highlights named cascade layers for tracking layer references."
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"pattern": "@container\\s+([a-zA-Z_][a-zA-Z0-9_-]*)\\s*\\(",
|
|
71
|
+
"kind": "read",
|
|
72
|
+
"description": "CSS @container query names. Highlights named container references."
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"pattern": "\\b(flex|grid|inline-flex|inline-grid|block|inline|inline-block|none|contents|flow-root)\\s*(?=;|})",
|
|
76
|
+
"kind": "text",
|
|
77
|
+
"description": "CSS display and layout keyword values. Highlights display modes and layout keywords."
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"pattern": "\\b(row|column|row-reverse|column-reverse|wrap|nowrap|wrap-reverse|stretch|center|flex-start|flex-end|space-between|space-around|space-evenly|baseline|start|end|self-start|self-end)\\b",
|
|
81
|
+
"kind": "text",
|
|
82
|
+
"description": "CSS Flexbox and Grid alignment keyword values. Highlights layout alignment terms."
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"pattern": "\\b([a-zA-Z_][a-zA-Z0-9_-]*)\\s*(?=\\{[^}]*\\bfrom\\b|\\{[^}]*\\d+%)",
|
|
86
|
+
"kind": "text",
|
|
87
|
+
"description": "CSS @keyframes animation names. Highlights the named animation identifiers."
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"pattern": "@scope\\s*\\(([^)]+)\\)",
|
|
91
|
+
"kind": "text",
|
|
92
|
+
"description": "CSS @scope rule selectors. Highlights the scope root selector in @scope declarations."
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"pattern": "\\[([a-zA-Z_-]+)(?:[~|^$*]?=)?(?:\"[^\"]*\"|'[^']*')?\\]",
|
|
96
|
+
"kind": "text",
|
|
97
|
+
"description": "CSS attribute selectors. Highlights attribute names and values used in selector matching."
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"pattern": "\\b(inherit|initial|unset|revert|revert-layer)\\b",
|
|
101
|
+
"kind": "text",
|
|
102
|
+
"description": "CSS global keyword values. Highlights cascade-affecting keywords."
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"pattern": "\\b(transparent|currentColor|currentcolor)\\b",
|
|
106
|
+
"kind": "text",
|
|
107
|
+
"description": "CSS special color keywords. Highlights transparent and currentColor references."
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"pattern": "@property\\s+(--[a-zA-Z_][a-zA-Z0-9_-]*)",
|
|
111
|
+
"kind": "write",
|
|
112
|
+
"description": "CSS @property registered custom property definitions. Highlights typed custom property registrations."
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"pattern": "\\b(block-size|inline-size|margin-block|margin-inline|padding-block|padding-inline|border-block|border-inline|inset-block|inset-inline|max-block-size|max-inline-size|min-block-size|min-inline-size)\\b",
|
|
116
|
+
"kind": "text",
|
|
117
|
+
"description": "CSS logical properties. Highlights flow-relative properties for internationalization-ready layouts."
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"pattern": "\\b(auto-fill|auto-fit)\\b",
|
|
121
|
+
"kind": "text",
|
|
122
|
+
"description": "CSS Grid repeat keywords. Highlights auto-fill and auto-fit for responsive grid tracks."
|
|
123
|
+
}
|
|
124
|
+
]
|
|
125
|
+
}
|