@platformos/platformos-language-server-common 0.0.6 → 0.0.7
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/CHANGELOG.md +10 -0
- package/dist/TypeSystem.js.map +1 -1
- package/dist/completions/providers/FilterCompletionProvider.js.map +1 -1
- package/dist/completions/providers/TranslationCompletionProvider.js +1 -1
- package/dist/completions/providers/TranslationCompletionProvider.js.map +1 -1
- package/dist/documentHighlights/providers/HtmlTagNameDocumentHighlightsProvider.d.ts +1 -1
- package/dist/formatting/OnTypeFormattingProvider.d.ts +1 -1
- package/dist/formatting/providers/HtmlElementAutoclosingOnTypeFormattingProvider.js.map +1 -1
- package/dist/linkedEditingRanges/providers/HtmlTagNameLinkedRangesProvider.d.ts +1 -1
- package/dist/progress.js.map +1 -1
- package/dist/server/Configuration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -9
- package/src/TypeSystem.spec.ts +6 -9
- package/src/TypeSystem.ts +2 -2
- package/src/completions/providers/ContentForBlockTypeCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/ContentForCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/ContentForParameterCompletionProvider.spec.ts +2 -2
- package/src/completions/providers/FilterCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/FilterCompletionProvider.ts +6 -6
- package/src/completions/providers/FilterNamedParameterCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/HtmlAttributeCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/HtmlAttributeValueCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/HtmlTagCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/LiquidDocParamTypeCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/LiquidDocTagCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/LiquidTagsCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/ObjectAttributeCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/PartialCompletionProvider.spec.ts +4 -4
- package/src/completions/providers/RenderPartialParameterCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/TranslationCompletionProvider.spec.ts +1 -1
- package/src/completions/providers/TranslationCompletionProvider.ts +1 -1
- package/src/css/CSSLanguageService.spec.ts +8 -10
- package/src/formatting/providers/HtmlElementAutoclosingOnTypeFormattingProvider.ts +1 -3
- package/src/hover/providers/ContentForArgumentHoverProvider.spec.ts +1 -1
- package/src/hover/providers/ContentForTypeHoverProvider.spec.ts +1 -1
- package/src/hover/providers/HtmlAttributeHoverProvider.spec.ts +1 -1
- package/src/hover/providers/HtmlAttributeValueHoverProvider.spec.ts +1 -1
- package/src/hover/providers/HtmlTagHoverProvider.spec.ts +1 -1
- package/src/hover/providers/LiquidDocTagHoverProvider.spec.ts +1 -1
- package/src/hover/providers/LiquidFilterArgumentHoverProvider.spec.ts +1 -1
- package/src/hover/providers/LiquidFilterHoverProvider.spec.ts +1 -1
- package/src/hover/providers/LiquidObjectAttributeHoverProvider.spec.ts +1 -1
- package/src/hover/providers/LiquidTagHoverProvider.spec.ts +1 -1
- package/src/hover/providers/RenderPartialHoverProvider.spec.ts +1 -1
- package/src/hover/providers/RenderPartialParameterHoverProvider.spec.ts +1 -1
- package/src/hover/providers/TranslationHoverProvider.spec.ts +1 -1
- package/src/progress.ts +4 -1
- package/src/server/Configuration.ts +4 -1
- package/src/test/CompletionItemsAssertion.spec.ts +1 -1
- package/dist/codeActions/providers/GenerateDocBlockProvider.d.ts +0 -10
- package/dist/codeActions/providers/GenerateDocBlockProvider.js +0 -39
- package/dist/codeActions/providers/GenerateDocBlockProvider.js.map +0 -1
- package/dist/commands/providers/GenerateDocBlockCommandProvider.d.ts +0 -19
- package/dist/commands/providers/GenerateDocBlockCommandProvider.js +0 -64
- package/dist/commands/providers/GenerateDocBlockCommandProvider.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@platformos/platformos-language-server-common",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"author": "platformOS",
|
|
@@ -27,14 +27,14 @@
|
|
|
27
27
|
"type-check": "tsc --noEmit -p ./tsconfig.json"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@platformos/liquid-html-parser": "^0.0.
|
|
31
|
-
"@platformos/platformos-check-common": "0.0.
|
|
32
|
-
"@platformos/platformos-graph": "0.0.
|
|
30
|
+
"@platformos/liquid-html-parser": "^0.0.7",
|
|
31
|
+
"@platformos/platformos-check-common": "0.0.7",
|
|
32
|
+
"@platformos/platformos-graph": "0.0.7",
|
|
33
33
|
"@vscode/web-custom-data": "^0.4.6",
|
|
34
|
-
"vscode-json-languageservice": "^5.
|
|
35
|
-
"vscode-languageserver": "^
|
|
36
|
-
"vscode-css-languageservice": "6.3.
|
|
37
|
-
"vscode-languageserver-textdocument": "^1.0.
|
|
38
|
-
"vscode-uri": "^3.0
|
|
34
|
+
"vscode-json-languageservice": "^5.7.1",
|
|
35
|
+
"vscode-languageserver": "^9.0.1",
|
|
36
|
+
"vscode-css-languageservice": "^6.3.9",
|
|
37
|
+
"vscode-languageserver-textdocument": "^1.0.12",
|
|
38
|
+
"vscode-uri": "^3.1.0"
|
|
39
39
|
}
|
|
40
40
|
}
|
package/src/TypeSystem.spec.ts
CHANGED
|
@@ -1068,9 +1068,8 @@ query {
|
|
|
1068
1068
|
|
|
1069
1069
|
describe('metafieldDefinitionsObjectMap', async () => {
|
|
1070
1070
|
it('should convert metafield definitions into types', async () => {
|
|
1071
|
-
const metafieldObjectMap =
|
|
1072
|
-
'file:///any/file.liquid'
|
|
1073
|
-
);
|
|
1071
|
+
const metafieldObjectMap =
|
|
1072
|
+
await typeSystem.metafieldDefinitionsObjectMap('file:///any/file.liquid');
|
|
1074
1073
|
|
|
1075
1074
|
assert(metafieldObjectMap['product_metafields']);
|
|
1076
1075
|
assert(metafieldObjectMap['product_metafield_custom']);
|
|
@@ -1078,9 +1077,8 @@ query {
|
|
|
1078
1077
|
});
|
|
1079
1078
|
|
|
1080
1079
|
it('should group metafield definitions by namespace', async () => {
|
|
1081
|
-
const metafieldObjectMap =
|
|
1082
|
-
'file:///any/file.liquid'
|
|
1083
|
-
);
|
|
1080
|
+
const metafieldObjectMap =
|
|
1081
|
+
await typeSystem.metafieldDefinitionsObjectMap('file:///any/file.liquid');
|
|
1084
1082
|
const properties = metafieldObjectMap['product_metafields'].properties;
|
|
1085
1083
|
|
|
1086
1084
|
assert(properties);
|
|
@@ -1131,9 +1129,8 @@ query {
|
|
|
1131
1129
|
});
|
|
1132
1130
|
|
|
1133
1131
|
it('should have `metafield_x_array` return_type for array of references', async () => {
|
|
1134
|
-
const metafieldObjectMap =
|
|
1135
|
-
'file:///any/file.liquid'
|
|
1136
|
-
);
|
|
1132
|
+
const metafieldObjectMap =
|
|
1133
|
+
await typeSystem.metafieldDefinitionsObjectMap('file:///any/file.liquid');
|
|
1137
1134
|
const relatedProperties = metafieldObjectMap['order_metafield_related'].properties;
|
|
1138
1135
|
|
|
1139
1136
|
assert(relatedProperties);
|
package/src/TypeSystem.ts
CHANGED
|
@@ -115,8 +115,8 @@ export class TypeSystem {
|
|
|
115
115
|
const entryType = isArrayType(type)
|
|
116
116
|
? type.valueType
|
|
117
117
|
: isShapeType(type) || isUnionType(type)
|
|
118
|
-
|
|
119
|
-
|
|
118
|
+
? Untyped
|
|
119
|
+
: type;
|
|
120
120
|
const entry = objectMap[entryType] ?? {};
|
|
121
121
|
return {
|
|
122
122
|
entry: { ...entry, name: identifier },
|
|
@@ -18,7 +18,7 @@ describe('Module: ContentForBlockTypeCompletionProvider', async () => {
|
|
|
18
18
|
tags: async () => [],
|
|
19
19
|
systemTranslations: async () => ({}),
|
|
20
20
|
},
|
|
21
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
21
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
22
22
|
getThemeBlockNames: async (_rootUri: string, _includePrivate: boolean) => [
|
|
23
23
|
'block-1',
|
|
24
24
|
'block-2',
|
|
@@ -18,7 +18,7 @@ describe('Module: ContentForCompletionProvider', async () => {
|
|
|
18
18
|
tags: async () => [],
|
|
19
19
|
systemTranslations: async () => ({}),
|
|
20
20
|
},
|
|
21
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
21
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
22
22
|
});
|
|
23
23
|
});
|
|
24
24
|
|
|
@@ -34,7 +34,7 @@ describe('Module: ContentForBlockParameterCompletionProvider', async () => {
|
|
|
34
34
|
tags: async () => [],
|
|
35
35
|
systemTranslations: async () => ({}),
|
|
36
36
|
},
|
|
37
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
37
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
38
38
|
});
|
|
39
39
|
});
|
|
40
40
|
|
|
@@ -266,7 +266,7 @@ describe('Module: ContentForBlockParameterCompletionProvider', async () => {
|
|
|
266
266
|
tags: async () => [],
|
|
267
267
|
systemTranslations: async () => ({}),
|
|
268
268
|
},
|
|
269
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
269
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
270
270
|
getDocDefinitionForURI: async (_uri, _category, _name) => {
|
|
271
271
|
return {
|
|
272
272
|
uri: 'file:///blocks/product-card.liquid',
|
|
@@ -137,7 +137,7 @@ describe('Module: FilterCompletionProvider', async () => {
|
|
|
137
137
|
tags: async () => [],
|
|
138
138
|
systemTranslations: async () => ({}),
|
|
139
139
|
},
|
|
140
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
140
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
141
141
|
});
|
|
142
142
|
});
|
|
143
143
|
|
|
@@ -50,12 +50,12 @@ export class FilterCompletionProvider implements Provider {
|
|
|
50
50
|
const normalizedType = isArrayType(inputType)
|
|
51
51
|
? 'array'
|
|
52
52
|
: isShapeType(inputType)
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
53
|
+
? inputType.shape.kind === 'array'
|
|
54
|
+
? 'array'
|
|
55
|
+
: 'untyped'
|
|
56
|
+
: isUnionType(inputType)
|
|
57
|
+
? 'untyped'
|
|
58
|
+
: inputType;
|
|
59
59
|
const options = await this.options(normalizedType);
|
|
60
60
|
|
|
61
61
|
return options
|
|
@@ -49,7 +49,7 @@ describe('Module: ObjectCompletionProvider', async () => {
|
|
|
49
49
|
tags: async () => [],
|
|
50
50
|
systemTranslations: async () => ({}),
|
|
51
51
|
},
|
|
52
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
52
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
53
53
|
});
|
|
54
54
|
});
|
|
55
55
|
|
|
@@ -23,7 +23,7 @@ describe('Module: HtmlAttributeCompletionProvider', async () => {
|
|
|
23
23
|
tags: async () => [],
|
|
24
24
|
systemTranslations: async () => ({}),
|
|
25
25
|
},
|
|
26
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
26
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
27
27
|
});
|
|
28
28
|
});
|
|
29
29
|
|
|
@@ -17,7 +17,7 @@ describe('Module: HtmlAttributeValueCompletionProvider', async () => {
|
|
|
17
17
|
tags: async () => [],
|
|
18
18
|
systemTranslations: async () => ({}),
|
|
19
19
|
},
|
|
20
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
20
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
21
21
|
});
|
|
22
22
|
});
|
|
23
23
|
|
|
@@ -21,7 +21,7 @@ describe('Module: HtmlTagCompletionProvider', async () => {
|
|
|
21
21
|
tags: async () => [],
|
|
22
22
|
systemTranslations: async () => ({}),
|
|
23
23
|
},
|
|
24
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
24
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
25
25
|
});
|
|
26
26
|
});
|
|
27
27
|
|
|
@@ -22,7 +22,7 @@ describe('Module: LiquidDocParamTypeCompletionProvider', async () => {
|
|
|
22
22
|
tags: async () => [],
|
|
23
23
|
systemTranslations: async () => ({}),
|
|
24
24
|
},
|
|
25
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
25
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
26
26
|
});
|
|
27
27
|
});
|
|
28
28
|
|
|
@@ -17,7 +17,7 @@ describe('Module: LiquidDocTagCompletionProvider', async () => {
|
|
|
17
17
|
tags: async () => [],
|
|
18
18
|
systemTranslations: async () => ({}),
|
|
19
19
|
},
|
|
20
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
20
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
21
21
|
});
|
|
22
22
|
});
|
|
23
23
|
|
|
@@ -91,7 +91,7 @@ describe('Module: LiquidTagsCompletionProvider', async () => {
|
|
|
91
91
|
tags: async () => tags,
|
|
92
92
|
systemTranslations: async () => ({}),
|
|
93
93
|
},
|
|
94
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
94
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
95
95
|
});
|
|
96
96
|
});
|
|
97
97
|
|
|
@@ -78,7 +78,7 @@ describe('Module: ObjectAttributeCompletionProvider', async () => {
|
|
|
78
78
|
systemTranslations: async () => ({}),
|
|
79
79
|
},
|
|
80
80
|
getThemeSettingsSchemaForURI: settingsProvider,
|
|
81
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
81
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
82
82
|
});
|
|
83
83
|
});
|
|
84
84
|
|
|
@@ -19,7 +19,7 @@ describe('Module: RenderSnippetCompletionProvider', async () => {
|
|
|
19
19
|
},
|
|
20
20
|
getTranslationsForURI: async (_) => ({}),
|
|
21
21
|
getPartialNamesForURI: async (_) => ['product-card', 'image'],
|
|
22
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
22
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
23
23
|
});
|
|
24
24
|
});
|
|
25
25
|
|
|
@@ -47,7 +47,7 @@ describe('Module: PartialCompletionProvider with paths', async () => {
|
|
|
47
47
|
}
|
|
48
48
|
return [];
|
|
49
49
|
},
|
|
50
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
50
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
51
51
|
});
|
|
52
52
|
|
|
53
53
|
await expect(provider).to.complete('{% render "/modules/user/commands', ['test']);
|
|
@@ -71,7 +71,7 @@ describe('Module: PartialCompletionProvider with paths', async () => {
|
|
|
71
71
|
}
|
|
72
72
|
return [];
|
|
73
73
|
},
|
|
74
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
74
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
75
75
|
});
|
|
76
76
|
|
|
77
77
|
await expect(provider).to.complete('{% render "/commands', ['test2']);
|
|
@@ -95,7 +95,7 @@ describe('Module: PartialCompletionProvider with paths', async () => {
|
|
|
95
95
|
}
|
|
96
96
|
return [];
|
|
97
97
|
},
|
|
98
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
98
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
99
99
|
});
|
|
100
100
|
|
|
101
101
|
await expect(provider).to.complete('{% render "/modules/user/commands', [
|
|
@@ -62,7 +62,7 @@ describe('Module: RenderSnippetParameterCompletionProvider', async () => {
|
|
|
62
62
|
tags: async () => [],
|
|
63
63
|
systemTranslations: async () => ({}),
|
|
64
64
|
},
|
|
65
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
65
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
66
66
|
getDocDefinitionForURI: async (_uri, _type, snippetName) => {
|
|
67
67
|
if (mockSnippetName === snippetName) {
|
|
68
68
|
return mockSnippetDefinition;
|
|
@@ -17,7 +17,7 @@ describe('Module: TranslationCompletionProvider', async () => {
|
|
|
17
17
|
tags: async () => [],
|
|
18
18
|
systemTranslations: async () => ({}),
|
|
19
19
|
},
|
|
20
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
20
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
21
21
|
getTranslationsForURI: async (_) => ({
|
|
22
22
|
general: {
|
|
23
23
|
username_html: '<b>username</b>',
|
|
@@ -82,7 +82,7 @@ export class TranslationCompletionProvider implements Provider {
|
|
|
82
82
|
|
|
83
83
|
return options.map(({ path, translation }): CompletionItem => {
|
|
84
84
|
const params = extractParams(
|
|
85
|
-
typeof translation === 'string' ? translation : Object.values(translation)[0] ?? '',
|
|
85
|
+
typeof translation === 'string' ? translation : (Object.values(translation)[0] ?? ''),
|
|
86
86
|
);
|
|
87
87
|
const parameters = paramsString(params);
|
|
88
88
|
return {
|
|
@@ -51,16 +51,14 @@ describe('Module: CSSLanguageService', () => {
|
|
|
51
51
|
|
|
52
52
|
const completions = await cssLanguageService.completions(params);
|
|
53
53
|
assert(isCompletionList(completions));
|
|
54
|
-
expect(completions.items).to.have.lengthOf(
|
|
54
|
+
expect(completions.items).to.have.lengthOf(377);
|
|
55
55
|
expect(completions.items[0].label).to.equal(':active');
|
|
56
56
|
expect(completions.items[0].documentation).to.deep.equal({
|
|
57
57
|
kind: 'markdown',
|
|
58
58
|
value:
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
(
|
|
62
|
-
|
|
63
|
-
[MDN Reference](https://developer.mozilla.org/docs/Web/CSS/:active)`),
|
|
59
|
+
`Applies while an element is being activated by the user\\. For example, between the times the user presses the mouse button and releases it\\.\n\n` +
|
|
60
|
+
` _Widely available across major browsers (Baseline since 2015)_\n\n` +
|
|
61
|
+
`[MDN Reference](https://developer.mozilla.org/docs/Web/CSS/:active)`,
|
|
64
62
|
});
|
|
65
63
|
});
|
|
66
64
|
});
|
|
@@ -83,13 +81,13 @@ describe('Module: CSSLanguageService', () => {
|
|
|
83
81
|
assert(hover !== null);
|
|
84
82
|
expect(hover.contents).to.eql({
|
|
85
83
|
kind: 'plaintext',
|
|
86
|
-
// Dedent this
|
|
87
84
|
value:
|
|
88
85
|
dedent(`In combination with 'float' and 'position', determines the type of box or boxes that are generated for an element.
|
|
89
|
-
|
|
90
|
-
|
|
86
|
+
|
|
87
|
+
Widely available across major browsers (Baseline since 2015)
|
|
88
|
+
|
|
91
89
|
Syntax: [ <display-outside> || <display-inside> ] | <display-listitem> | <display-internal> | <display-box> | <display-legacy>
|
|
92
|
-
|
|
90
|
+
|
|
93
91
|
MDN Reference: https://developer.mozilla.org/docs/Web/CSS/display`),
|
|
94
92
|
});
|
|
95
93
|
});
|
|
@@ -52,9 +52,7 @@ const defer = (fn: () => void) => setTimeout(fn, 10);
|
|
|
52
52
|
* </div>
|
|
53
53
|
* ```
|
|
54
54
|
*/
|
|
55
|
-
export class HtmlElementAutoclosingOnTypeFormattingProvider
|
|
56
|
-
implements BaseOnTypeFormattingProvider
|
|
57
|
-
{
|
|
55
|
+
export class HtmlElementAutoclosingOnTypeFormattingProvider implements BaseOnTypeFormattingProvider {
|
|
58
56
|
constructor(private setCursorPosition: SetCursorPosition) {}
|
|
59
57
|
|
|
60
58
|
onTypeFormatting(
|
|
@@ -68,7 +68,7 @@ const createProvider = (getSnippetDefinition: GetDocDefinitionForURI) => {
|
|
|
68
68
|
systemTranslations: async () => ({}),
|
|
69
69
|
},
|
|
70
70
|
new TranslationProvider(new MockFileSystem({})),
|
|
71
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
71
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
72
72
|
async () => ({}),
|
|
73
73
|
async () => [],
|
|
74
74
|
getSnippetDefinition,
|
|
@@ -83,7 +83,7 @@ const createProvider = (getSnippetDefinition: GetDocDefinitionForURI) => {
|
|
|
83
83
|
systemTranslations: async () => ({}),
|
|
84
84
|
},
|
|
85
85
|
new TranslationProvider(new MockFileSystem({})),
|
|
86
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
86
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
87
87
|
async () => ({}),
|
|
88
88
|
async () => [],
|
|
89
89
|
getSnippetDefinition,
|
|
@@ -20,7 +20,7 @@ describe('Module: HtmlAttributeHoverProvider', async () => {
|
|
|
20
20
|
systemTranslations: async () => ({}),
|
|
21
21
|
},
|
|
22
22
|
new TranslationProvider(new MockFileSystem({}, '.')),
|
|
23
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
23
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
24
24
|
);
|
|
25
25
|
});
|
|
26
26
|
|
|
@@ -20,7 +20,7 @@ describe('Module: HtmlAttributeHoverProvider', async () => {
|
|
|
20
20
|
systemTranslations: async () => ({}),
|
|
21
21
|
},
|
|
22
22
|
new TranslationProvider(new MockFileSystem({}, '.')),
|
|
23
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
23
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
24
24
|
);
|
|
25
25
|
});
|
|
26
26
|
|
|
@@ -20,7 +20,7 @@ describe('Module: HtmlTagHoverProvider', async () => {
|
|
|
20
20
|
systemTranslations: async () => ({}),
|
|
21
21
|
},
|
|
22
22
|
new TranslationProvider(new MockFileSystem({})),
|
|
23
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
23
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
24
24
|
);
|
|
25
25
|
});
|
|
26
26
|
|
|
@@ -22,7 +22,7 @@ describe('Module: RenderSnippetParameterHoverProvider', async () => {
|
|
|
22
22
|
systemTranslations: async () => ({}),
|
|
23
23
|
},
|
|
24
24
|
new TranslationProvider(new MockFileSystem({})),
|
|
25
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
25
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
26
26
|
);
|
|
27
27
|
});
|
|
28
28
|
|
|
@@ -36,7 +36,7 @@ describe('Module: LiquidFilterArgumentHoverProvider', async () => {
|
|
|
36
36
|
systemTranslations: async () => ({}),
|
|
37
37
|
},
|
|
38
38
|
new TranslationProvider(new MockFileSystem({})),
|
|
39
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
39
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
40
40
|
);
|
|
41
41
|
});
|
|
42
42
|
|
|
@@ -27,7 +27,7 @@ describe('Module: LiquidFilterHoverProvider', async () => {
|
|
|
27
27
|
systemTranslations: async () => ({}),
|
|
28
28
|
},
|
|
29
29
|
new TranslationProvider(new MockFileSystem({})),
|
|
30
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
30
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
31
31
|
);
|
|
32
32
|
});
|
|
33
33
|
|
|
@@ -60,7 +60,7 @@ describe('Module: LiquidObjectAttributeHoverProvider', async () => {
|
|
|
60
60
|
systemTranslations: async () => ({}),
|
|
61
61
|
},
|
|
62
62
|
new TranslationProvider(new MockFileSystem({})),
|
|
63
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
63
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
64
64
|
);
|
|
65
65
|
});
|
|
66
66
|
|
|
@@ -23,7 +23,7 @@ describe('Module: LiquidTagHoverProvider', async () => {
|
|
|
23
23
|
systemTranslations: async () => ({}),
|
|
24
24
|
},
|
|
25
25
|
new TranslationProvider(new MockFileSystem({})),
|
|
26
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
26
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
27
27
|
);
|
|
28
28
|
});
|
|
29
29
|
|
|
@@ -77,7 +77,7 @@ const createProvider = (getSnippetDefinition: GetDocDefinitionForURI) => {
|
|
|
77
77
|
systemTranslations: async () => ({}),
|
|
78
78
|
},
|
|
79
79
|
new TranslationProvider(new MockFileSystem({})),
|
|
80
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
80
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
81
81
|
async () => ({}),
|
|
82
82
|
async () => [],
|
|
83
83
|
getSnippetDefinition,
|
|
@@ -62,7 +62,7 @@ const createProvider = (getSnippetDefinition: GetDocDefinitionForURI) => {
|
|
|
62
62
|
systemTranslations: async () => ({}),
|
|
63
63
|
},
|
|
64
64
|
new TranslationProvider(new MockFileSystem({})),
|
|
65
|
-
async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
65
|
+
async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
66
66
|
async () => ({}),
|
|
67
67
|
async () => [],
|
|
68
68
|
getSnippetDefinition,
|
package/src/progress.ts
CHANGED
|
@@ -20,7 +20,10 @@ export interface IProgress {
|
|
|
20
20
|
* await progress.end('Finished');
|
|
21
21
|
*/
|
|
22
22
|
export class Progress {
|
|
23
|
-
constructor(
|
|
23
|
+
constructor(
|
|
24
|
+
private connection: Connection,
|
|
25
|
+
private progressToken: string,
|
|
26
|
+
) {}
|
|
24
27
|
|
|
25
28
|
static create(
|
|
26
29
|
connection: Connection | undefined,
|
|
@@ -26,7 +26,10 @@ export class Configuration {
|
|
|
26
26
|
[PRELOAD_ON_BOOT]: boolean = true;
|
|
27
27
|
[INCLUDE_FILES_FROM_DISK]: boolean = false;
|
|
28
28
|
|
|
29
|
-
constructor(
|
|
29
|
+
constructor(
|
|
30
|
+
private connection: Connection,
|
|
31
|
+
private capabilities: ClientCapabilities,
|
|
32
|
+
) {
|
|
30
33
|
this.connection = connection;
|
|
31
34
|
this.capabilities = capabilities;
|
|
32
35
|
}
|
|
@@ -19,7 +19,7 @@ describe('Module: CompletionItemsAssertion', () => {
|
|
|
19
19
|
tags: async () => [{ name: 'render' }],
|
|
20
20
|
systemTranslations: async () => ({}),
|
|
21
21
|
},
|
|
22
|
-
getMetafieldDefinitions: async (_rootUri: string) => ({} as MetafieldDefinitionMap
|
|
22
|
+
getMetafieldDefinitions: async (_rootUri: string) => ({}) as MetafieldDefinitionMap,
|
|
23
23
|
});
|
|
24
24
|
});
|
|
25
25
|
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { CodeAction, CodeActionParams, Command } from 'vscode-languageserver';
|
|
2
|
-
import { BaseCodeActionsProvider } from '../BaseCodeActionsProvider';
|
|
3
|
-
/**
|
|
4
|
-
* GenerateDocBlockProvider provides a source action to generate {% doc %} blocks
|
|
5
|
-
* for partials and blocks based on detected parameters.
|
|
6
|
-
*/
|
|
7
|
-
export declare class GenerateDocBlockProvider extends BaseCodeActionsProvider {
|
|
8
|
-
static kind: "source";
|
|
9
|
-
codeActions(params: CodeActionParams): (Command | CodeAction)[];
|
|
10
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GenerateDocBlockProvider = void 0;
|
|
4
|
-
const vscode_languageserver_1 = require("vscode-languageserver");
|
|
5
|
-
const platformos_check_common_1 = require("@platformos/platformos-check-common");
|
|
6
|
-
const BaseCodeActionsProvider_1 = require("../BaseCodeActionsProvider");
|
|
7
|
-
/**
|
|
8
|
-
* GenerateDocBlockProvider provides a source action to generate {% doc %} blocks
|
|
9
|
-
* for partials and blocks based on detected parameters.
|
|
10
|
-
*/
|
|
11
|
-
class GenerateDocBlockProvider extends BaseCodeActionsProvider_1.BaseCodeActionsProvider {
|
|
12
|
-
codeActions(params) {
|
|
13
|
-
const { uri } = params.textDocument;
|
|
14
|
-
const document = this.documentManager.get(uri);
|
|
15
|
-
if (!document)
|
|
16
|
-
return [];
|
|
17
|
-
// Only provide for liquid files that support doc blocks (partials/blocks)
|
|
18
|
-
if (!(0, platformos_check_common_1.filePathSupportsLiquidDoc)(uri))
|
|
19
|
-
return [];
|
|
20
|
-
// Check if file already has a doc block
|
|
21
|
-
const ast = document.ast;
|
|
22
|
-
if ((0, platformos_check_common_1.isError)(ast))
|
|
23
|
-
return [];
|
|
24
|
-
// Return a code action that will trigger the command
|
|
25
|
-
const codeAction = {
|
|
26
|
-
title: 'Generate doc block from parameters',
|
|
27
|
-
kind: GenerateDocBlockProvider.kind,
|
|
28
|
-
command: {
|
|
29
|
-
title: 'Generate Doc Block',
|
|
30
|
-
command: 'platformOS.generateDocBlock',
|
|
31
|
-
arguments: [uri, document.version],
|
|
32
|
-
},
|
|
33
|
-
};
|
|
34
|
-
return [codeAction];
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
exports.GenerateDocBlockProvider = GenerateDocBlockProvider;
|
|
38
|
-
GenerateDocBlockProvider.kind = vscode_languageserver_1.CodeActionKind.Source;
|
|
39
|
-
//# sourceMappingURL=GenerateDocBlockProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GenerateDocBlockProvider.js","sourceRoot":"","sources":["../../../src/codeActions/providers/GenerateDocBlockProvider.ts"],"names":[],"mappings":";;;AAAA,iEAK+B;AAC/B,iFAAyF;AACzF,wEAAqE;AAGrE;;;GAGG;AACH,MAAa,wBAAyB,SAAQ,iDAAuB;IAGnE,WAAW,CAAC,MAAwB;QAClC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE/C,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAC;QAEzB,0EAA0E;QAC1E,IAAI,CAAC,IAAA,mDAAyB,EAAC,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QAE/C,wCAAwC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACzB,IAAI,IAAA,iCAAO,EAAC,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QAE5B,qDAAqD;QACrD,MAAM,UAAU,GAAe;YAC7B,KAAK,EAAE,oCAAoC;YAC3C,IAAI,EAAE,wBAAwB,CAAC,IAAI;YACnC,OAAO,EAAE;gBACP,KAAK,EAAE,oBAAoB;gBAC3B,OAAO,EAAE,6BAA6B;gBACtC,SAAS,EAAE,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC;aACnC;SACF,CAAC;QAEF,OAAO,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;;AA5BH,4DA6BC;AA5BQ,6BAAI,GAAG,sCAAc,CAAC,MAAM,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ThemeDocset } from '@platformos/platformos-check-common';
|
|
2
|
-
import { Command } from 'vscode-languageserver';
|
|
3
|
-
import { BaseExecuteCommandProvider } from '../BaseExecuteCommandProvider';
|
|
4
|
-
/**
|
|
5
|
-
* GenerateDocBlockCommandProvider handles the `platformOS.generateDocBlock` command.
|
|
6
|
-
*
|
|
7
|
-
* It generates a {% doc %} block based on detected parameters in a partial/block file
|
|
8
|
-
* and inserts it at the beginning of the file.
|
|
9
|
-
*/
|
|
10
|
-
export declare class GenerateDocBlockCommandProvider extends BaseExecuteCommandProvider {
|
|
11
|
-
static command: "platformOS.generateDocBlock";
|
|
12
|
-
private themeDocset;
|
|
13
|
-
setThemeDocset(themeDocset: ThemeDocset): void;
|
|
14
|
-
execute(uri: string, version: number | undefined): Promise<void>;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Creates a command to generate a doc block for the given URI.
|
|
18
|
-
*/
|
|
19
|
-
export declare function generateDocBlockCommand(uri: string, version: number | undefined): Command;
|