1
- import { MetafieldDefinitionMap , SourceCodeType , ThemeDocset } from '@shopify/theme-check-common' ;
1
+ import {
2
+ LiquidDocDefinition ,
3
+ MetafieldDefinitionMap ,
4
+ SourceCodeType ,
5
+ ThemeDocset ,
6
+ } from '@shopify/theme-check-common' ;
2
7
import { Hover , HoverParams } from 'vscode-languageserver' ;
3
8
import { TypeSystem } from '../TypeSystem' ;
4
9
import { DocumentManager } from '../documents' ;
@@ -11,6 +16,7 @@ import {
11
16
LiquidObjectAttributeHoverProvider ,
12
17
LiquidObjectHoverProvider ,
13
18
LiquidTagHoverProvider ,
19
+ SnippetHoverProvider ,
14
20
TranslationHoverProvider ,
15
21
} from './providers' ;
16
22
import { HtmlAttributeValueHoverProvider } from './providers/HtmlAttributeValueHoverProvider' ;
@@ -26,6 +32,10 @@ export class HoverProvider {
26
32
readonly getMetafieldDefinitions : ( rootUri : string ) => Promise < MetafieldDefinitionMap > ,
27
33
readonly getTranslationsForURI : GetTranslationsForURI = async ( ) => ( { } ) ,
28
34
readonly getSettingsSchemaForURI : GetThemeSettingsSchemaForURI = async ( ) => [ ] ,
35
+ readonly getLiquidDocDefinitionsForURI : (
36
+ uri : string ,
37
+ snippetName : string ,
38
+ ) => Promise < LiquidDocDefinition > ,
29
39
) {
30
40
const typeSystem = new TypeSystem (
31
41
themeDocset ,
@@ -41,6 +51,7 @@ export class HoverProvider {
41
51
new HtmlAttributeHoverProvider ( ) ,
42
52
new HtmlAttributeValueHoverProvider ( ) ,
43
53
new TranslationHoverProvider ( getTranslationsForURI , documentManager ) ,
54
+ new SnippetHoverProvider ( getLiquidDocDefinitionsForURI ) ,
44
55
] ;
45
56
}
46
57
0 commit comments