@player-tools/cli 0.5.3-next.0 → 0.6.0-next.0
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/dist/commands/dependency-versions/check.js +25 -25
- package/dist/commands/dsl/compile.js +19 -19
- package/dist/commands/dsl/validate.js +9 -9
- package/dist/commands/json/validate.js +13 -13
- package/dist/commands/xlr/compile.js +20 -20
- package/dist/commands/xlr/convert.js +18 -18
- package/dist/plugins/LSPAssetsPlugin.js +1 -0
- package/dist/plugins/LSPPluginPlugin.js +1 -0
- package/dist/plugins/LSPTransformsPlugin.js +1 -0
- package/dist/utils/base-command.js +8 -7
- package/dist/utils/compilation-context.js +22 -20
- package/package.json +14 -14
|
@@ -10,6 +10,31 @@ const core_1 = require("@oclif/core");
|
|
|
10
10
|
const base_command_1 = require("../../utils/base-command");
|
|
11
11
|
/** A command to get @player-ui/@player-tools dependency versions and issue warnings/recommendations based on them */
|
|
12
12
|
class DependencyVersionsCheck extends base_command_1.BaseCommand {
|
|
13
|
+
static summary = "Checks for @player-ui/@player-tools dependency version mismatches and issues warnings/solutions accordingly";
|
|
14
|
+
static description = `Consider the following:
|
|
15
|
+
- The interpretation of TOP-LEVEL and NESTED dependencies is as follows:
|
|
16
|
+
a. TOP-LEVEL dependencies only have one 'node_modules' in their path
|
|
17
|
+
b. NESTED dependencies have more than one 'node_modules' in their path
|
|
18
|
+
- @player-ui/@player-tools dependencies are fetched not only from inside the 'node_modules' at the top of the repository in which it is run but also from 'node_modules' in sub-directories.
|
|
19
|
+
For example, if you have some 'node_modules' inside of a 'packages' folder that contains @player-ui/@player-tools dependencies, then these will also be fetched.
|
|
20
|
+
The display of such dependencies also depends on the first bullet point.
|
|
21
|
+
`;
|
|
22
|
+
static flags = {
|
|
23
|
+
...base_command_1.BaseCommand.flags,
|
|
24
|
+
verbose: core_1.Flags.boolean({
|
|
25
|
+
char: "v",
|
|
26
|
+
description: "Give verbose description",
|
|
27
|
+
}),
|
|
28
|
+
path: core_1.Flags.boolean({
|
|
29
|
+
char: "p",
|
|
30
|
+
description: "Outputs full path to dependency",
|
|
31
|
+
}),
|
|
32
|
+
ignore: core_1.Flags.string({
|
|
33
|
+
char: "i",
|
|
34
|
+
description: "Ignore the specified pattern(s) when outputting results. Note multiple patterns can be passed",
|
|
35
|
+
multiple: true,
|
|
36
|
+
}),
|
|
37
|
+
};
|
|
13
38
|
async getOptions() {
|
|
14
39
|
const { flags } = await this.parse(DependencyVersionsCheck);
|
|
15
40
|
return {
|
|
@@ -242,30 +267,5 @@ class DependencyVersionsCheck extends base_command_1.BaseCommand {
|
|
|
242
267
|
return results;
|
|
243
268
|
}
|
|
244
269
|
}
|
|
245
|
-
DependencyVersionsCheck.summary = "Checks for @player-ui/@player-tools dependency version mismatches and issues warnings/solutions accordingly";
|
|
246
|
-
DependencyVersionsCheck.description = `Consider the following:
|
|
247
|
-
- The interpretation of TOP-LEVEL and NESTED dependencies is as follows:
|
|
248
|
-
a. TOP-LEVEL dependencies only have one 'node_modules' in their path
|
|
249
|
-
b. NESTED dependencies have more than one 'node_modules' in their path
|
|
250
|
-
- @player-ui/@player-tools dependencies are fetched not only from inside the 'node_modules' at the top of the repository in which it is run but also from 'node_modules' in sub-directories.
|
|
251
|
-
For example, if you have some 'node_modules' inside of a 'packages' folder that contains @player-ui/@player-tools dependencies, then these will also be fetched.
|
|
252
|
-
The display of such dependencies also depends on the first bullet point.
|
|
253
|
-
`;
|
|
254
|
-
DependencyVersionsCheck.flags = {
|
|
255
|
-
...base_command_1.BaseCommand.flags,
|
|
256
|
-
verbose: core_1.Flags.boolean({
|
|
257
|
-
char: "v",
|
|
258
|
-
description: "Give verbose description",
|
|
259
|
-
}),
|
|
260
|
-
path: core_1.Flags.boolean({
|
|
261
|
-
char: "p",
|
|
262
|
-
description: "Outputs full path to dependency",
|
|
263
|
-
}),
|
|
264
|
-
ignore: core_1.Flags.string({
|
|
265
|
-
char: "i",
|
|
266
|
-
description: "Ignore the specified pattern(s) when outputting results. Note multiple patterns can be passed",
|
|
267
|
-
multiple: true,
|
|
268
|
-
}),
|
|
269
|
-
};
|
|
270
270
|
exports.default = DependencyVersionsCheck;
|
|
271
271
|
//# sourceMappingURL=check.js.map
|
|
@@ -17,6 +17,25 @@ const validate_1 = tslib_1.__importDefault(require("../json/validate"));
|
|
|
17
17
|
const validate_2 = tslib_1.__importDefault(require("./validate"));
|
|
18
18
|
/** A command to compile player DSL content into JSON */
|
|
19
19
|
class DSLCompile extends base_command_1.BaseCommand {
|
|
20
|
+
static description = "Compile Player DSL files into JSON";
|
|
21
|
+
static flags = {
|
|
22
|
+
...base_command_1.BaseCommand.flags,
|
|
23
|
+
input: core_1.Flags.string({
|
|
24
|
+
char: "i",
|
|
25
|
+
description: "An input directory to compile.\nAny jsx/ts/tsx files will be loaded via babel-require automatically.",
|
|
26
|
+
}),
|
|
27
|
+
output: core_1.Flags.string({
|
|
28
|
+
char: "o",
|
|
29
|
+
description: "Output directory to write results to.",
|
|
30
|
+
}),
|
|
31
|
+
"skip-validation": core_1.Flags.boolean({
|
|
32
|
+
description: "Option to skip validating the generated JSON",
|
|
33
|
+
}),
|
|
34
|
+
exp: core_1.Flags.boolean({
|
|
35
|
+
description: "Use experimental language features",
|
|
36
|
+
default: false,
|
|
37
|
+
}),
|
|
38
|
+
};
|
|
20
39
|
async getOptions() {
|
|
21
40
|
const { flags } = await this.parse(DSLCompile);
|
|
22
41
|
const config = await this.getPlayerConfig();
|
|
@@ -135,24 +154,5 @@ class DSLCompile extends base_command_1.BaseCommand {
|
|
|
135
154
|
return results;
|
|
136
155
|
}
|
|
137
156
|
}
|
|
138
|
-
DSLCompile.description = "Compile Player DSL files into JSON";
|
|
139
|
-
DSLCompile.flags = {
|
|
140
|
-
...base_command_1.BaseCommand.flags,
|
|
141
|
-
input: core_1.Flags.string({
|
|
142
|
-
char: "i",
|
|
143
|
-
description: "An input directory to compile.\nAny jsx/ts/tsx files will be loaded via babel-require automatically.",
|
|
144
|
-
}),
|
|
145
|
-
output: core_1.Flags.string({
|
|
146
|
-
char: "o",
|
|
147
|
-
description: "Output directory to write results to.",
|
|
148
|
-
}),
|
|
149
|
-
"skip-validation": core_1.Flags.boolean({
|
|
150
|
-
description: "Option to skip validating the generated JSON",
|
|
151
|
-
}),
|
|
152
|
-
exp: core_1.Flags.boolean({
|
|
153
|
-
description: "Use experimental language features",
|
|
154
|
-
default: false,
|
|
155
|
-
}),
|
|
156
|
-
};
|
|
157
157
|
exports.default = DSLCompile;
|
|
158
158
|
//# sourceMappingURL=compile.js.map
|
|
@@ -12,6 +12,15 @@ const fs_2 = require("../../utils/fs");
|
|
|
12
12
|
const compiler_options_1 = require("../../utils/compiler-options");
|
|
13
13
|
/** A command thay runs TS typechecker against source ts and tsx files */
|
|
14
14
|
class Validate extends base_command_1.BaseCommand {
|
|
15
|
+
static description = "Validate TSX files before they get compiled";
|
|
16
|
+
static flags = {
|
|
17
|
+
...base_command_1.BaseCommand.flags,
|
|
18
|
+
files: core_1.Flags.string({
|
|
19
|
+
char: "f",
|
|
20
|
+
description: "A list of files or globs to validate",
|
|
21
|
+
multiple: true,
|
|
22
|
+
}),
|
|
23
|
+
};
|
|
15
24
|
async getOptions() {
|
|
16
25
|
const { flags } = await this.parse(Validate);
|
|
17
26
|
const config = await this.getPlayerConfig();
|
|
@@ -94,14 +103,5 @@ class Validate extends base_command_1.BaseCommand {
|
|
|
94
103
|
}
|
|
95
104
|
}
|
|
96
105
|
}
|
|
97
|
-
Validate.description = "Validate TSX files before they get compiled";
|
|
98
|
-
Validate.flags = {
|
|
99
|
-
...base_command_1.BaseCommand.flags,
|
|
100
|
-
files: core_1.Flags.string({
|
|
101
|
-
char: "f",
|
|
102
|
-
description: "A list of files or globs to validate",
|
|
103
|
-
multiple: true,
|
|
104
|
-
}),
|
|
105
|
-
};
|
|
106
106
|
exports.default = Validate;
|
|
107
107
|
//# sourceMappingURL=validate.js.map
|
|
@@ -12,6 +12,19 @@ const fs_2 = require("../../utils/fs");
|
|
|
12
12
|
const task_runner_1 = require("../../utils/task-runner");
|
|
13
13
|
/** A command to validate JSON content */
|
|
14
14
|
class Validate extends base_command_1.BaseCommand {
|
|
15
|
+
static description = "Validate Player JSON content";
|
|
16
|
+
static flags = {
|
|
17
|
+
...base_command_1.BaseCommand.flags,
|
|
18
|
+
files: core_1.Flags.string({
|
|
19
|
+
char: "f",
|
|
20
|
+
description: "A list of files or globs to validate",
|
|
21
|
+
multiple: true,
|
|
22
|
+
}),
|
|
23
|
+
exp: core_1.Flags.boolean({
|
|
24
|
+
description: "Use experimental language features",
|
|
25
|
+
default: false,
|
|
26
|
+
}),
|
|
27
|
+
};
|
|
15
28
|
async getOptions() {
|
|
16
29
|
const { flags } = await this.parse(Validate);
|
|
17
30
|
const config = await this.getPlayerConfig();
|
|
@@ -63,18 +76,5 @@ class Validate extends base_command_1.BaseCommand {
|
|
|
63
76
|
return results;
|
|
64
77
|
}
|
|
65
78
|
}
|
|
66
|
-
Validate.description = "Validate Player JSON content";
|
|
67
|
-
Validate.flags = {
|
|
68
|
-
...base_command_1.BaseCommand.flags,
|
|
69
|
-
files: core_1.Flags.string({
|
|
70
|
-
char: "f",
|
|
71
|
-
description: "A list of files or globs to validate",
|
|
72
|
-
multiple: true,
|
|
73
|
-
}),
|
|
74
|
-
exp: core_1.Flags.boolean({
|
|
75
|
-
description: "Use experimental language features",
|
|
76
|
-
default: false,
|
|
77
|
-
}),
|
|
78
|
-
};
|
|
79
79
|
exports.default = Validate;
|
|
80
80
|
//# sourceMappingURL=validate.js.map
|
|
@@ -16,6 +16,26 @@ const consts_1 = require("../../utils/xlr/consts");
|
|
|
16
16
|
* Exports TS Interfaces/Types to XLR format
|
|
17
17
|
*/
|
|
18
18
|
class XLRCompile extends base_command_1.BaseCommand {
|
|
19
|
+
static description = "Compiles typescript files to XLRs format";
|
|
20
|
+
static flags = {
|
|
21
|
+
...base_command_1.BaseCommand.flags,
|
|
22
|
+
input: core_1.Flags.string({
|
|
23
|
+
char: "i",
|
|
24
|
+
description: "An input directory to search for types to export",
|
|
25
|
+
default: "./src",
|
|
26
|
+
}),
|
|
27
|
+
output: core_1.Flags.string({
|
|
28
|
+
char: "o",
|
|
29
|
+
description: "Output directory to write results to.",
|
|
30
|
+
default: "./dist",
|
|
31
|
+
}),
|
|
32
|
+
mode: core_1.Flags.enum({
|
|
33
|
+
char: "m",
|
|
34
|
+
description: "Search strategy for types to export: plugin (default, looks for exported EnchancedPlayerPlugin classes) or type (all exported types)",
|
|
35
|
+
options: ["plugin", "types"],
|
|
36
|
+
default: "plugin",
|
|
37
|
+
}),
|
|
38
|
+
};
|
|
19
39
|
async getOptions() {
|
|
20
40
|
const { flags } = await this.parse(XLRCompile);
|
|
21
41
|
const config = await this.getPlayerConfig();
|
|
@@ -129,25 +149,5 @@ class XLRCompile extends base_command_1.BaseCommand {
|
|
|
129
149
|
fs_1.default.writeFileSync(path_1.default.join(outputDirectory, "manifest.js"), tsManifestFile);
|
|
130
150
|
}
|
|
131
151
|
}
|
|
132
|
-
XLRCompile.description = "Compiles typescript files to XLRs format";
|
|
133
|
-
XLRCompile.flags = {
|
|
134
|
-
...base_command_1.BaseCommand.flags,
|
|
135
|
-
input: core_1.Flags.string({
|
|
136
|
-
char: "i",
|
|
137
|
-
description: "An input directory to search for types to export",
|
|
138
|
-
default: "./src",
|
|
139
|
-
}),
|
|
140
|
-
output: core_1.Flags.string({
|
|
141
|
-
char: "o",
|
|
142
|
-
description: "Output directory to write results to.",
|
|
143
|
-
default: "./dist",
|
|
144
|
-
}),
|
|
145
|
-
mode: core_1.Flags.enum({
|
|
146
|
-
char: "m",
|
|
147
|
-
description: "Search strategy for types to export: plugin (default, looks for exported EnchancedPlayerPlugin classes) or type (all exported types)",
|
|
148
|
-
options: ["plugin", "types"],
|
|
149
|
-
default: "plugin",
|
|
150
|
-
}),
|
|
151
|
-
};
|
|
152
152
|
exports.default = XLRCompile;
|
|
153
153
|
//# sourceMappingURL=compile.js.map
|
|
@@ -18,6 +18,24 @@ const PlayerImportMap = new Map([
|
|
|
18
18
|
* Converts XLRs into a specific language
|
|
19
19
|
*/
|
|
20
20
|
class XLRConvert extends base_command_1.BaseCommand {
|
|
21
|
+
static description = "Exports XLRs files to a specific language";
|
|
22
|
+
static flags = {
|
|
23
|
+
...base_command_1.BaseCommand.flags,
|
|
24
|
+
input: core_1.Flags.string({
|
|
25
|
+
char: "i",
|
|
26
|
+
description: "An input directory to search for types to export",
|
|
27
|
+
default: "./dist",
|
|
28
|
+
}),
|
|
29
|
+
output: core_1.Flags.string({
|
|
30
|
+
char: "o",
|
|
31
|
+
description: "Output directory to write results to.",
|
|
32
|
+
}),
|
|
33
|
+
lang: core_1.Flags.enum({
|
|
34
|
+
char: "l",
|
|
35
|
+
description: "Search strategy for types to export: plugin (default, looks for exported EnchancedPlayerPlugin classes) or type (all exported types)",
|
|
36
|
+
options: ["TypeScript"],
|
|
37
|
+
}),
|
|
38
|
+
};
|
|
21
39
|
async getOptions() {
|
|
22
40
|
const { flags } = await this.parse(XLRConvert);
|
|
23
41
|
const { input, output } = flags;
|
|
@@ -55,23 +73,5 @@ class XLRConvert extends base_command_1.BaseCommand {
|
|
|
55
73
|
return { exitCode: 0 };
|
|
56
74
|
}
|
|
57
75
|
}
|
|
58
|
-
XLRConvert.description = "Exports XLRs files to a specific language";
|
|
59
|
-
XLRConvert.flags = {
|
|
60
|
-
...base_command_1.BaseCommand.flags,
|
|
61
|
-
input: core_1.Flags.string({
|
|
62
|
-
char: "i",
|
|
63
|
-
description: "An input directory to search for types to export",
|
|
64
|
-
default: "./dist",
|
|
65
|
-
}),
|
|
66
|
-
output: core_1.Flags.string({
|
|
67
|
-
char: "o",
|
|
68
|
-
description: "Output directory to write results to.",
|
|
69
|
-
}),
|
|
70
|
-
lang: core_1.Flags.enum({
|
|
71
|
-
char: "l",
|
|
72
|
-
description: "Search strategy for types to export: plugin (default, looks for exported EnchancedPlayerPlugin classes) or type (all exported types)",
|
|
73
|
-
options: ["TypeScript"],
|
|
74
|
-
}),
|
|
75
|
-
};
|
|
76
76
|
exports.default = XLRConvert;
|
|
77
77
|
//# sourceMappingURL=convert.js.map
|
|
@@ -11,6 +11,14 @@ const compilation_context_1 = require("./compilation-context");
|
|
|
11
11
|
const configLoader = (0, cosmiconfig_1.cosmiconfig)("player");
|
|
12
12
|
/** The common configs for all */
|
|
13
13
|
class BaseCommand extends core_1.Command {
|
|
14
|
+
static flags = {
|
|
15
|
+
config: core_1.Flags.string({
|
|
16
|
+
description: "Path to a specific config file to load.\nBy default, will automatically search for an rc or config file to load",
|
|
17
|
+
char: "c",
|
|
18
|
+
}),
|
|
19
|
+
};
|
|
20
|
+
static strict = false;
|
|
21
|
+
resolvedConfig;
|
|
14
22
|
async loadConfig(configFilePath) {
|
|
15
23
|
if (configFilePath) {
|
|
16
24
|
try {
|
|
@@ -141,11 +149,4 @@ class BaseCommand extends core_1.Command {
|
|
|
141
149
|
}
|
|
142
150
|
}
|
|
143
151
|
exports.BaseCommand = BaseCommand;
|
|
144
|
-
BaseCommand.flags = {
|
|
145
|
-
config: core_1.Flags.string({
|
|
146
|
-
description: "Path to a specific config file to load.\nBy default, will automatically search for an rc or config file to load",
|
|
147
|
-
char: "c",
|
|
148
|
-
}),
|
|
149
|
-
};
|
|
150
|
-
BaseCommand.strict = false;
|
|
151
152
|
//# sourceMappingURL=base-command.js.map
|
|
@@ -7,27 +7,29 @@ const tapable_ts_1 = require("tapable-ts");
|
|
|
7
7
|
*
|
|
8
8
|
*/
|
|
9
9
|
class CompilationContext {
|
|
10
|
+
/** Hooks to wrap the context of the compilation */
|
|
11
|
+
hooks = {
|
|
12
|
+
/**
|
|
13
|
+
* Function for determining a specific or desired content type given on the file contents or other conditions
|
|
14
|
+
*
|
|
15
|
+
* @param fileName - The relative name of the file
|
|
16
|
+
* @param content - The contents in the file
|
|
17
|
+
* @returns string with the content type.
|
|
18
|
+
*/
|
|
19
|
+
identifyContentType: new tapable_ts_1.AsyncSeriesBailHook(),
|
|
20
|
+
/**
|
|
21
|
+
* Function for returning the compile content given an specific type or condition
|
|
22
|
+
*
|
|
23
|
+
* @param context - Settings for the content to be compiled, such as type
|
|
24
|
+
* @param content - The contents in the file
|
|
25
|
+
* @param fileName - The relative name of the file
|
|
26
|
+
* @returns CompilerReturn object instance or undefined
|
|
27
|
+
*/
|
|
28
|
+
compileContent: new tapable_ts_1.AsyncSeriesBailHook(),
|
|
29
|
+
};
|
|
30
|
+
/** A DSL compiler instance */
|
|
31
|
+
dslCompiler;
|
|
10
32
|
constructor(dslCompiler) {
|
|
11
|
-
/** Hooks to wrap the context of the compilation */
|
|
12
|
-
this.hooks = {
|
|
13
|
-
/**
|
|
14
|
-
* Function for determining a specific or desired content type given on the file contents or other conditions
|
|
15
|
-
*
|
|
16
|
-
* @param fileName - The relative name of the file
|
|
17
|
-
* @param content - The contents in the file
|
|
18
|
-
* @returns string with the content type.
|
|
19
|
-
*/
|
|
20
|
-
identifyContentType: new tapable_ts_1.AsyncSeriesBailHook(),
|
|
21
|
-
/**
|
|
22
|
-
* Function for returning the compile content given an specific type or condition
|
|
23
|
-
*
|
|
24
|
-
* @param context - Settings for the content to be compiled, such as type
|
|
25
|
-
* @param content - The contents in the file
|
|
26
|
-
* @param fileName - The relative name of the file
|
|
27
|
-
* @returns CompilerReturn object instance or undefined
|
|
28
|
-
*/
|
|
29
|
-
compileContent: new tapable_ts_1.AsyncSeriesBailHook(),
|
|
30
|
-
};
|
|
31
33
|
this.dslCompiler = dslCompiler;
|
|
32
34
|
this.hooks.compileContent.tap("default", async ({ type }, content) => {
|
|
33
35
|
if ((0, dsl_1.isDefaultCompilerContentType)(type)) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@player-tools/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0-next.0",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"types": "./dist/index.d.ts",
|
|
6
6
|
"files": [
|
|
@@ -21,19 +21,17 @@
|
|
|
21
21
|
"player": "bin/run"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@player-tools/dsl": "0.
|
|
25
|
-
"@player-tools/json-language-service": "0.
|
|
26
|
-
"@player-tools/xlr": "0.
|
|
27
|
-
"@player-tools/xlr-converters": "0.
|
|
28
|
-
"@player-tools/xlr-sdk": "0.
|
|
29
|
-
"@player-tools/xlr-utils": "0.
|
|
30
|
-
"react": "^
|
|
31
|
-
"tapable-ts": "^0.2.4",
|
|
32
|
-
"@babel/register": "^7.23.3",
|
|
24
|
+
"@player-tools/dsl": "0.6.0-next.0",
|
|
25
|
+
"@player-tools/json-language-service": "0.6.0-next.0",
|
|
26
|
+
"@player-tools/xlr": "0.6.0-next.0",
|
|
27
|
+
"@player-tools/xlr-converters": "0.6.0-next.0",
|
|
28
|
+
"@player-tools/xlr-sdk": "0.6.0-next.0",
|
|
29
|
+
"@player-tools/xlr-utils": "0.6.0-next.0",
|
|
30
|
+
"@babel/plugin-transform-react-jsx-source": "^7.23.3",
|
|
33
31
|
"@babel/preset-env": "^7.23.3",
|
|
34
32
|
"@babel/preset-react": "^7.23.3",
|
|
35
33
|
"@babel/preset-typescript": "^7.23.3",
|
|
36
|
-
"@babel/
|
|
34
|
+
"@babel/register": "^7.23.3",
|
|
37
35
|
"@oclif/core": "1.9.0",
|
|
38
36
|
"@oclif/plugin-legacy": "^1.2.7",
|
|
39
37
|
"@oclif/plugin-plugins": "^1.9.0",
|
|
@@ -49,10 +47,12 @@
|
|
|
49
47
|
"log-symbols": "^4.0.0",
|
|
50
48
|
"log-update": "^4.0.0",
|
|
51
49
|
"mkdirp": "^1.0.4",
|
|
52
|
-
"
|
|
53
|
-
"
|
|
50
|
+
"react": "^18.2.0",
|
|
51
|
+
"tapable-ts": "^0.2.4",
|
|
52
|
+
"tslib": "^2.6.2",
|
|
54
53
|
"typescript": "^5.4.4",
|
|
55
|
-
"
|
|
54
|
+
"vscode-languageserver-textdocument": "^1.0.1",
|
|
55
|
+
"vscode-languageserver-types": "^3.15.1"
|
|
56
56
|
},
|
|
57
57
|
"sideEffects": false,
|
|
58
58
|
"peerDependencies": {}
|