@typespec/compiler 0.65.0-dev.6 → 0.65.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/manifest.js +2 -2
- package/dist/src/core/binder.d.ts.map +1 -1
- package/dist/src/core/binder.js +1 -0
- package/dist/src/core/binder.js.map +1 -1
- package/dist/src/core/checker.d.ts.map +1 -1
- package/dist/src/core/checker.js +17 -15
- package/dist/src/core/checker.js.map +1 -1
- package/dist/src/core/decorator-utils.d.ts.map +1 -1
- package/dist/src/core/decorator-utils.js +3 -1
- package/dist/src/core/decorator-utils.js.map +1 -1
- package/dist/src/core/deprecation.d.ts.map +1 -1
- package/dist/src/core/deprecation.js +1 -3
- package/dist/src/core/deprecation.js.map +1 -1
- package/dist/src/core/engine.d.ts +6 -0
- package/dist/src/core/engine.d.ts.map +1 -0
- package/dist/src/core/engine.js +7 -0
- package/dist/src/core/engine.js.map +1 -0
- package/dist/src/core/helpers/projected-names-utils.d.ts.map +1 -1
- package/dist/src/core/helpers/projected-names-utils.js.map +1 -1
- package/dist/src/core/install.d.ts.map +1 -1
- package/dist/src/core/install.js +20 -0
- package/dist/src/core/install.js.map +1 -1
- package/dist/src/core/intrinsic-type-state.d.ts.map +1 -1
- package/dist/src/core/intrinsic-type-state.js +1 -3
- package/dist/src/core/intrinsic-type-state.js.map +1 -1
- package/dist/src/core/messages.d.ts +2 -20
- package/dist/src/core/messages.d.ts.map +1 -1
- package/dist/src/core/messages.js +0 -6
- package/dist/src/core/messages.js.map +1 -1
- package/dist/src/core/name-resolver.d.ts.map +1 -1
- package/dist/src/core/name-resolver.js +1 -0
- package/dist/src/core/name-resolver.js.map +1 -1
- package/dist/src/core/parser.d.ts.map +1 -1
- package/dist/src/core/parser.js +1 -0
- package/dist/src/core/parser.js.map +1 -1
- package/dist/src/core/program.d.ts +2 -0
- package/dist/src/core/program.d.ts.map +1 -1
- package/dist/src/core/program.js +2 -0
- package/dist/src/core/program.js.map +1 -1
- package/dist/src/core/projected-program.d.ts.map +1 -1
- package/dist/src/core/projected-program.js.map +1 -1
- package/dist/src/core/projection-members.d.ts.map +1 -1
- package/dist/src/core/projection-members.js +1 -0
- package/dist/src/core/projection-members.js.map +1 -1
- package/dist/src/core/projector.d.ts.map +1 -1
- package/dist/src/core/projector.js +1 -5
- package/dist/src/core/projector.js.map +1 -1
- package/dist/src/core/semantic-walker.d.ts +4 -0
- package/dist/src/core/semantic-walker.d.ts.map +1 -1
- package/dist/src/core/semantic-walker.js +5 -0
- package/dist/src/core/semantic-walker.js.map +1 -1
- package/dist/src/core/state-accessors.d.ts.map +1 -1
- package/dist/src/core/state-accessors.js.map +1 -1
- package/dist/src/core/type-relation-checker.d.ts.map +1 -1
- package/dist/src/core/type-relation-checker.js +1 -0
- package/dist/src/core/type-relation-checker.js.map +1 -1
- package/dist/src/core/types.d.ts +7 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/types.js.map +1 -1
- package/dist/src/core/visibility/core.d.ts.map +1 -1
- package/dist/src/core/visibility/core.js +7 -6
- package/dist/src/core/visibility/core.js.map +1 -1
- package/dist/src/experimental/freeze-graph.d.ts +3 -0
- package/dist/src/experimental/freeze-graph.d.ts.map +1 -0
- package/dist/src/experimental/freeze-graph.js +28 -0
- package/dist/src/experimental/freeze-graph.js.map +1 -0
- package/dist/src/experimental/index.d.ts +6 -2
- package/dist/src/experimental/index.d.ts.map +1 -1
- package/dist/src/experimental/index.js +6 -2
- package/dist/src/experimental/index.js.map +1 -1
- package/dist/src/experimental/mutators.d.ts +5 -3
- package/dist/src/experimental/mutators.d.ts.map +1 -1
- package/dist/src/experimental/mutators.js +283 -52
- package/dist/src/experimental/mutators.js.map +1 -1
- package/dist/src/experimental/realm.d.ts.map +1 -1
- package/dist/src/experimental/realm.js +5 -0
- package/dist/src/experimental/realm.js.map +1 -1
- package/dist/src/experimental/typekit/kits/literal.d.ts +61 -52
- package/dist/src/experimental/typekit/kits/literal.d.ts.map +1 -1
- package/dist/src/experimental/typekit/kits/literal.js.map +1 -1
- package/dist/src/experimental/typekit/kits/model-property.d.ts +11 -3
- package/dist/src/experimental/typekit/kits/model-property.d.ts.map +1 -1
- package/dist/src/experimental/typekit/kits/model-property.js.map +1 -1
- package/dist/src/experimental/typekit/kits/model.d.ts +41 -15
- package/dist/src/experimental/typekit/kits/model.d.ts.map +1 -1
- package/dist/src/experimental/typekit/kits/model.js +4 -0
- package/dist/src/experimental/typekit/kits/model.js.map +1 -1
- package/dist/src/experimental/typekit/kits/scalar.d.ts +349 -344
- package/dist/src/experimental/typekit/kits/scalar.d.ts.map +1 -1
- package/dist/src/experimental/typekit/kits/scalar.js.map +1 -1
- package/dist/src/experimental/typekit/kits/type.d.ts +5 -4
- package/dist/src/experimental/typekit/kits/type.d.ts.map +1 -1
- package/dist/src/experimental/typekit/kits/type.js +19 -38
- package/dist/src/experimental/typekit/kits/type.js.map +1 -1
- package/dist/src/experimental/typekit/kits/union-variant.d.ts +28 -15
- package/dist/src/experimental/typekit/kits/union-variant.d.ts.map +1 -1
- package/dist/src/experimental/typekit/kits/union-variant.js.map +1 -1
- package/dist/src/experimental/typekit/kits/union.d.ts +39 -30
- package/dist/src/experimental/typekit/kits/union.d.ts.map +1 -1
- package/dist/src/experimental/typekit/kits/union.js.map +1 -1
- package/dist/src/formatter/print/printer.d.ts.map +1 -1
- package/dist/src/formatter/print/printer.js.map +1 -1
- package/dist/src/init/init.d.ts +3 -2
- package/dist/src/init/init.d.ts.map +1 -1
- package/dist/src/init/init.js +8 -3
- package/dist/src/init/init.js.map +1 -1
- package/dist/src/init/scaffold.d.ts +2 -1
- package/dist/src/init/scaffold.d.ts.map +1 -1
- package/dist/src/init/scaffold.js +1 -1
- package/dist/src/init/scaffold.js.map +1 -1
- package/dist/src/lib/decorators.d.ts +0 -2
- package/dist/src/lib/decorators.d.ts.map +1 -1
- package/dist/src/lib/decorators.js +15 -26
- package/dist/src/lib/decorators.js.map +1 -1
- package/dist/src/lib/encoded-names.js +3 -3
- package/dist/src/lib/encoded-names.js.map +1 -1
- package/dist/src/lib/examples.js +5 -1
- package/dist/src/lib/examples.js.map +1 -1
- package/dist/src/lib/key.d.ts.map +1 -1
- package/dist/src/lib/key.js +3 -2
- package/dist/src/lib/key.js.map +1 -1
- package/dist/src/lib/paging.js +3 -3
- package/dist/src/lib/paging.js.map +1 -1
- package/dist/src/lib/service.d.ts.map +1 -1
- package/dist/src/lib/service.js +3 -2
- package/dist/src/lib/service.js.map +1 -1
- package/dist/src/lib/utils.d.ts +6 -3
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +7 -10
- package/dist/src/lib/utils.js.map +1 -1
- package/dist/src/lib/visibility.d.ts.map +1 -1
- package/dist/src/lib/visibility.js +3 -2
- package/dist/src/lib/visibility.js.map +1 -1
- package/dist/src/module-resolver/esm/resolve-package-exports.js +2 -2
- package/dist/src/module-resolver/esm/resolve-package-exports.js.map +1 -1
- package/dist/src/module-resolver/esm/resolve-package-imports.d.ts +5 -0
- package/dist/src/module-resolver/esm/resolve-package-imports.d.ts.map +1 -0
- package/dist/src/module-resolver/esm/resolve-package-imports.js +26 -0
- package/dist/src/module-resolver/esm/resolve-package-imports.js.map +1 -0
- package/dist/src/module-resolver/esm/utils.d.ts +4 -1
- package/dist/src/module-resolver/esm/utils.d.ts.map +1 -1
- package/dist/src/module-resolver/esm/utils.js +5 -0
- package/dist/src/module-resolver/esm/utils.js.map +1 -1
- package/dist/src/module-resolver/module-resolver.d.ts +2 -0
- package/dist/src/module-resolver/module-resolver.d.ts.map +1 -1
- package/dist/src/module-resolver/module-resolver.js +55 -3
- package/dist/src/module-resolver/module-resolver.js.map +1 -1
- package/dist/src/server/lib-provider.d.ts +23 -0
- package/dist/src/server/lib-provider.d.ts.map +1 -0
- package/dist/src/server/{emitter-provider.js → lib-provider.js} +25 -23
- package/dist/src/server/lib-provider.js.map +1 -0
- package/dist/src/server/serverlib.d.ts.map +1 -1
- package/dist/src/server/serverlib.js +5 -2
- package/dist/src/server/serverlib.js.map +1 -1
- package/dist/src/server/tspconfig/completion.d.ts +5 -3
- package/dist/src/server/tspconfig/completion.d.ts.map +1 -1
- package/dist/src/server/tspconfig/completion.js +234 -16
- package/dist/src/server/tspconfig/completion.js.map +1 -1
- package/dist/src/server/yaml-resolver.d.ts +20 -2
- package/dist/src/server/yaml-resolver.d.ts.map +1 -1
- package/dist/src/server/yaml-resolver.js +39 -6
- package/dist/src/server/yaml-resolver.js.map +1 -1
- package/dist/src/types/package-json.d.ts +19 -2
- package/dist/src/types/package-json.d.ts.map +1 -1
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +1 -0
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/{experimental → utils}/state-accessor.d.ts +2 -4
- package/dist/src/utils/state-accessor.d.ts.map +1 -0
- package/dist/src/{experimental → utils}/state-accessor.js +2 -4
- package/dist/src/utils/state-accessor.js.map +1 -0
- package/lib/std/projected-names.tsp +5 -5
- package/package.json +11 -6
- package/templates/__snapshots__/rest/main.tsp +13 -7
- package/templates/rest/main.tsp +13 -7
- package/templates/scaffolding.json +7 -7
- package/dist/src/experimental/state-accessor.d.ts.map +0 -1
- package/dist/src/experimental/state-accessor.js.map +0 -1
- package/dist/src/server/emitter-provider.d.ts +0 -22
- package/dist/src/server/emitter-provider.d.ts.map +0 -1
- package/dist/src/server/emitter-provider.js.map +0 -1
|
@@ -1,34 +1,41 @@
|
|
|
1
|
-
import { CompletionItemKind } from "vscode-languageserver/node.js";
|
|
1
|
+
import { CompletionItemKind, Position, Range, TextEdit, } from "vscode-languageserver/node.js";
|
|
2
|
+
import { isMap, isPair } from "yaml";
|
|
2
3
|
import { emitterOptionsSchema, TypeSpecConfigJsonSchema } from "../../config/config-schema.js";
|
|
4
|
+
import { getDirectoryPath, getNormalizedAbsolutePath, joinPaths, normalizeSlashes, } from "../../core/path-utils.js";
|
|
3
5
|
import { distinctArray } from "../../utils/misc.js";
|
|
4
|
-
import {
|
|
6
|
+
import { resolveYamlPositionDetail } from "../yaml-resolver.js";
|
|
5
7
|
export async function provideTspconfigCompletionItems(tspConfigDoc, tspConfigPosition, context) {
|
|
6
|
-
const { fileService, emitterProvider, log } = context;
|
|
7
|
-
const target =
|
|
8
|
+
const { fileService, compilerHost, emitterProvider, linterProvider, log } = context;
|
|
9
|
+
const target = resolveYamlPositionDetail(tspConfigDoc, tspConfigPosition, log);
|
|
8
10
|
if (target === undefined) {
|
|
9
11
|
return [];
|
|
10
12
|
}
|
|
11
|
-
|
|
13
|
+
// Variable interpolation
|
|
14
|
+
if (target.sourceRange) {
|
|
15
|
+
const variableInterpolationItems = resolveVariableInterpolationCompleteItems(target.yamlDoc, target.path, tspConfigDoc.getText().slice(target.sourceRange.pos, target.cursorPosition));
|
|
16
|
+
if (variableInterpolationItems.length > 0) {
|
|
17
|
+
return variableInterpolationItems;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
const items = resolveTspConfigCompleteItems(await fileService.getPath(tspConfigDoc), target, tspConfigPosition, log);
|
|
12
21
|
return items;
|
|
13
|
-
async function resolveTspConfigCompleteItems(tspConfigFile, target) {
|
|
14
|
-
const { path: nodePath, type: targetType, siblings } = target;
|
|
22
|
+
async function resolveTspConfigCompleteItems(tspConfigFile, target, tspConfigPosition, log) {
|
|
23
|
+
const { path: nodePath, type: targetType, siblings, source } = target;
|
|
15
24
|
const CONFIG_PATH_LENGTH_FOR_EMITTER_LIST = 2;
|
|
25
|
+
const CONFIG_PATH_LENGTH_FOR_LINTER_LIST = 2;
|
|
26
|
+
const CONFIG_PATH_LENGTH_FOR_EXTENDS = 1;
|
|
27
|
+
const CONFIG_PATH_LENGTH_FOR_IMPORTS = 2;
|
|
16
28
|
if ((nodePath.length === CONFIG_PATH_LENGTH_FOR_EMITTER_LIST &&
|
|
17
29
|
nodePath[0] === "options" &&
|
|
18
30
|
targetType === "key") ||
|
|
19
31
|
(nodePath.length === CONFIG_PATH_LENGTH_FOR_EMITTER_LIST &&
|
|
20
32
|
nodePath[0] === "emit" &&
|
|
21
33
|
targetType === "arr-item")) {
|
|
22
|
-
const emitters = await emitterProvider.
|
|
34
|
+
const emitters = await emitterProvider.listLibraries(tspConfigFile);
|
|
23
35
|
const items = [];
|
|
24
36
|
for (const [name, pkg] of Object.entries(emitters)) {
|
|
25
37
|
if (!siblings.includes(name)) {
|
|
26
|
-
const item = {
|
|
27
|
-
label: name,
|
|
28
|
-
kind: CompletionItemKind.Field,
|
|
29
|
-
documentation: (await pkg.getPackageJsonData())?.description ?? `Emitter from ${name}`,
|
|
30
|
-
insertText: `"${name}"`,
|
|
31
|
-
};
|
|
38
|
+
const item = createCompletionItemWithQuote(name, (await pkg.getPackageJsonData())?.description ?? `Emitter from ${name}`, tspConfigPosition, target);
|
|
32
39
|
items.push(item);
|
|
33
40
|
}
|
|
34
41
|
}
|
|
@@ -36,7 +43,7 @@ export async function provideTspconfigCompletionItems(tspConfigDoc, tspConfigPos
|
|
|
36
43
|
}
|
|
37
44
|
else if (nodePath.length > CONFIG_PATH_LENGTH_FOR_EMITTER_LIST && nodePath[0] === "options") {
|
|
38
45
|
const emitterName = nodePath[CONFIG_PATH_LENGTH_FOR_EMITTER_LIST - 1];
|
|
39
|
-
const emitter = await emitterProvider.
|
|
46
|
+
const emitter = await emitterProvider.getLibrary(tspConfigFile, emitterName);
|
|
40
47
|
if (!emitter) {
|
|
41
48
|
return [];
|
|
42
49
|
}
|
|
@@ -58,6 +65,66 @@ export async function provideTspconfigCompletionItems(tspConfigDoc, tspConfigPos
|
|
|
58
65
|
}
|
|
59
66
|
return [...itemsFromBuiltIn, ...itemsFromEmitter];
|
|
60
67
|
}
|
|
68
|
+
else if (nodePath.length > CONFIG_PATH_LENGTH_FOR_LINTER_LIST && nodePath[0] === "linter") {
|
|
69
|
+
const extendKeyWord = nodePath[CONFIG_PATH_LENGTH_FOR_LINTER_LIST - 1];
|
|
70
|
+
const items = [];
|
|
71
|
+
const linters = await linterProvider.listLibraries(tspConfigFile);
|
|
72
|
+
if (extendKeyWord === "extends") {
|
|
73
|
+
for (const [name, pkg] of Object.entries(linters)) {
|
|
74
|
+
// If a ruleSet exists for the linter, add it to the end of the library name.
|
|
75
|
+
const exports = await pkg.getModuleExports();
|
|
76
|
+
if (exports?.$linter?.ruleSets !== undefined) {
|
|
77
|
+
// Below ruleSets are objects rather than arrays
|
|
78
|
+
for (const [ruleSet] of Object.entries(exports?.$linter?.ruleSets)) {
|
|
79
|
+
const labelName = `${name}/${ruleSet}`;
|
|
80
|
+
if (!siblings.includes(labelName)) {
|
|
81
|
+
const item = createCompletionItemWithQuote(labelName, (await pkg.getPackageJsonData())?.description ?? `Linters from ${labelName}`, tspConfigPosition, target);
|
|
82
|
+
items.push(item);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
// Add the library name directly.
|
|
87
|
+
if (!siblings.includes(name)) {
|
|
88
|
+
const item = createCompletionItemWithQuote(name, (await pkg.getPackageJsonData())?.description ?? `Linters from ${name}`, tspConfigPosition, target);
|
|
89
|
+
items.push(item);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
else if (extendKeyWord === "enable" || extendKeyWord === "disable") {
|
|
94
|
+
// enable/disable rules
|
|
95
|
+
for (const [name, pkg] of Object.entries(linters)) {
|
|
96
|
+
const exports = await pkg.getModuleExports();
|
|
97
|
+
if (exports?.$linter?.rules !== undefined) {
|
|
98
|
+
for (const [, rule] of Object.entries(exports?.$linter?.rules)) {
|
|
99
|
+
const labelName = `${name}/${rule.name}`;
|
|
100
|
+
const item = createCompletionItemWithQuote(labelName, rule.description, tspConfigPosition, target);
|
|
101
|
+
items.push(item);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
log({
|
|
108
|
+
level: "warning",
|
|
109
|
+
message: "Unknown linter keyword, it should be 'extends', 'enable' or 'disable'",
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
return items;
|
|
113
|
+
}
|
|
114
|
+
else if (nodePath.length === CONFIG_PATH_LENGTH_FOR_EXTENDS && nodePath[0] === "extends") {
|
|
115
|
+
const currentFolder = getDirectoryPath(tspConfigFile);
|
|
116
|
+
const newFolderPath = joinPaths(currentFolder, source);
|
|
117
|
+
// Exclude the current yaml configuration file
|
|
118
|
+
const relativeFiles = await findFilesOrDirsWithSameExtension(compilerHost, newFolderPath, ".yaml", [normalizeSlashes(tspConfigFile)]);
|
|
119
|
+
return getFilePathCompletionItems(relativeFiles, siblings, source);
|
|
120
|
+
}
|
|
121
|
+
else if (nodePath.length >= CONFIG_PATH_LENGTH_FOR_IMPORTS && nodePath[0] === "imports") {
|
|
122
|
+
const currentFolder = getDirectoryPath(tspConfigFile);
|
|
123
|
+
const newFolderPath = joinPaths(currentFolder, source);
|
|
124
|
+
// Exclude main.tsp files that are the same as the current yaml configuration directory
|
|
125
|
+
const relativeFiles = await findFilesOrDirsWithSameExtension(compilerHost, newFolderPath, ".tsp", [joinPaths(currentFolder, "main.tsp")]);
|
|
126
|
+
return getFilePathCompletionItems(relativeFiles, siblings, source);
|
|
127
|
+
}
|
|
61
128
|
else {
|
|
62
129
|
const schema = TypeSpecConfigJsonSchema;
|
|
63
130
|
return schema ? resolveCompleteItems(schema, target) : [];
|
|
@@ -138,7 +205,9 @@ export async function provideTspconfigCompletionItems(tspConfigDoc, tspConfigPos
|
|
|
138
205
|
const item = {
|
|
139
206
|
label: key,
|
|
140
207
|
kind: CompletionItemKind.Field,
|
|
141
|
-
documentation: cur.
|
|
208
|
+
documentation: cur.required?.includes(key)
|
|
209
|
+
? "[required]\n" + (cur.properties[key].description ?? "")
|
|
210
|
+
: "[optional]\n" + (cur.properties[key].description ?? ""),
|
|
142
211
|
};
|
|
143
212
|
return item;
|
|
144
213
|
});
|
|
@@ -173,4 +242,153 @@ export async function provideTspconfigCompletionItems(tspConfigDoc, tspConfigPos
|
|
|
173
242
|
return distinctArray(result, (t) => t.label);
|
|
174
243
|
}
|
|
175
244
|
}
|
|
245
|
+
/**
|
|
246
|
+
* Create the common CompletionItem object, which value is included in quotes
|
|
247
|
+
* @param labelName The value of the label attribute of the CompletionItem object
|
|
248
|
+
* @param description The value of the documentation attribute of the CompletionItem object
|
|
249
|
+
* @param tspConfigPosition Input current line location object, see {@link Position}
|
|
250
|
+
* @param target The target object of the current configuration file, see {@link YamlPositionDetail}
|
|
251
|
+
* @returns CompletionItem object
|
|
252
|
+
*/
|
|
253
|
+
function createCompletionItemWithQuote(labelName, description, tspConfigPosition, target) {
|
|
254
|
+
if (target.sourceRange &&
|
|
255
|
+
target.cursorPosition >= target.sourceRange.pos &&
|
|
256
|
+
target.cursorPosition <= target.sourceRange.end) {
|
|
257
|
+
// If it is a quoted string, the relative position needs to be reduced by 1
|
|
258
|
+
const lenRelativeToStartPos = target.sourceType === "QUOTE_SINGLE" || target.sourceType === "QUOTE_DOUBLE"
|
|
259
|
+
? target.cursorPosition - target.sourceRange.pos - 1
|
|
260
|
+
: target.cursorPosition - target.sourceRange.pos;
|
|
261
|
+
return {
|
|
262
|
+
label: labelName,
|
|
263
|
+
kind: CompletionItemKind.Field,
|
|
264
|
+
documentation: description,
|
|
265
|
+
textEdit: TextEdit.replace(Range.create(Position.create(tspConfigPosition.line, tspConfigPosition.character - lenRelativeToStartPos), Position.create(tspConfigPosition.line, tspConfigPosition.character)), target.sourceType === "QUOTE_SINGLE" || target.sourceType === "QUOTE_DOUBLE"
|
|
266
|
+
? labelName
|
|
267
|
+
: `"${labelName}"`),
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
return {
|
|
271
|
+
label: labelName,
|
|
272
|
+
kind: CompletionItemKind.Field,
|
|
273
|
+
documentation: description,
|
|
274
|
+
insertText: `"${labelName}"`,
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Find a set of dirs/files with the same suffix
|
|
279
|
+
* @param compilerHost CompilerHost object for file operations, see {@link CompilerHost}
|
|
280
|
+
* @param rootPath The absolute input path or relative path of the current configuration file
|
|
281
|
+
* @param fileExtension File extension
|
|
282
|
+
* @param excludeFiles exclude files array, default is []
|
|
283
|
+
* @returns dirs/files array
|
|
284
|
+
*/
|
|
285
|
+
async function findFilesOrDirsWithSameExtension(compilerHost, rootPath, fileExtension, excludeFiles = []) {
|
|
286
|
+
const exclude = ["node_modules", "tsp-output", ".vs", ".vscode"];
|
|
287
|
+
const files = [];
|
|
288
|
+
try {
|
|
289
|
+
// When reading the content under the path, an error may be reported if the path is incorrect.
|
|
290
|
+
const dirs = await compilerHost.readDir(rootPath);
|
|
291
|
+
for (const d of dirs) {
|
|
292
|
+
if (!exclude.includes(d) && !excludeFiles.includes(getNormalizedAbsolutePath(d, rootPath))) {
|
|
293
|
+
try {
|
|
294
|
+
const stat = await compilerHost.stat(joinPaths(rootPath, d));
|
|
295
|
+
if (stat.isDirectory() || (stat.isFile() && d.endsWith(fileExtension))) {
|
|
296
|
+
files.push(d);
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
catch {
|
|
300
|
+
// If the path is incorrect, the error is ignored
|
|
301
|
+
continue;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
catch {
|
|
307
|
+
return files;
|
|
308
|
+
}
|
|
309
|
+
return files;
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Get the CompletionItem object array of the relative path of the file
|
|
313
|
+
* @param relativeFiles File relative path array
|
|
314
|
+
* @param siblings Sibling node array
|
|
315
|
+
* @param source The input source of the current node
|
|
316
|
+
* @returns CompletionItem object array
|
|
317
|
+
*/
|
|
318
|
+
function getFilePathCompletionItems(relativeFiles, siblings, source) {
|
|
319
|
+
return relativeFiles
|
|
320
|
+
.filter((file) => !siblings.includes(joinPaths(source, file)))
|
|
321
|
+
.map((file) => {
|
|
322
|
+
return {
|
|
323
|
+
label: file,
|
|
324
|
+
kind: CompletionItemKind.File,
|
|
325
|
+
};
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* resolve variable interpolation completion items
|
|
330
|
+
* @param yamlDocNodes tsp config yaml document nodes , see {@link Document<Node, true>}
|
|
331
|
+
* @param path current path of the target node, such as ["linter", "extends","- ┆"]
|
|
332
|
+
* @param curText current editing text, from startPos to curPos
|
|
333
|
+
* @returns variable interpolation completion items
|
|
334
|
+
*/
|
|
335
|
+
function resolveVariableInterpolationCompleteItems(yamlDocNodes, path, curText) {
|
|
336
|
+
if (/{\s*env\.[^}]*$/.test(curText)) {
|
|
337
|
+
// environment-variables
|
|
338
|
+
return getVariableCompletionItem(yamlDocNodes, "environment-variables", "Custom environment variables");
|
|
339
|
+
}
|
|
340
|
+
else if (/{[^}]*$/.test(curText)) {
|
|
341
|
+
// parameters and built-in variables
|
|
342
|
+
const result = [
|
|
343
|
+
...getVariableCompletionItem(yamlDocNodes, "parameters", "Custom paramters variables"),
|
|
344
|
+
...["cwd", "project-root"].map((value) => {
|
|
345
|
+
const item = {
|
|
346
|
+
label: value,
|
|
347
|
+
kind: CompletionItemKind.Value,
|
|
348
|
+
documentation: "Built-in variables",
|
|
349
|
+
};
|
|
350
|
+
return item;
|
|
351
|
+
}),
|
|
352
|
+
];
|
|
353
|
+
// if the current path is options, add output-dir and emitter-name
|
|
354
|
+
const CONFIG_PATH_LENGTH_FOR_OPTIONS = 2;
|
|
355
|
+
if (path.length > CONFIG_PATH_LENGTH_FOR_OPTIONS && path[0] === "options") {
|
|
356
|
+
result.push(...["output-dir", "emitter-name"].map((value) => {
|
|
357
|
+
const item = {
|
|
358
|
+
label: value,
|
|
359
|
+
kind: CompletionItemKind.Value,
|
|
360
|
+
documentation: "Built-in variables",
|
|
361
|
+
};
|
|
362
|
+
return item;
|
|
363
|
+
}));
|
|
364
|
+
}
|
|
365
|
+
return result;
|
|
366
|
+
}
|
|
367
|
+
return [];
|
|
368
|
+
}
|
|
369
|
+
/**
|
|
370
|
+
* Get the corresponding CompletionItem array based on the filter name
|
|
371
|
+
* @param yamlDoc The contents of the YAML configuration file
|
|
372
|
+
* @param filterName The filter name
|
|
373
|
+
* @param description The description of the CompletionItem object
|
|
374
|
+
* @returns CompletionItem object array
|
|
375
|
+
*/
|
|
376
|
+
function getVariableCompletionItem(yamlDoc, filterName, description) {
|
|
377
|
+
const result = [];
|
|
378
|
+
if (isMap(yamlDoc.contents)) {
|
|
379
|
+
const yamlMap = yamlDoc.contents.items.find((item) => item.key.source === filterName);
|
|
380
|
+
if (yamlMap && yamlMap.value !== null && isMap(yamlMap.value)) {
|
|
381
|
+
yamlMap.value.items.forEach((i) => {
|
|
382
|
+
if (isPair(i)) {
|
|
383
|
+
result.push({
|
|
384
|
+
label: i.key.source ?? "",
|
|
385
|
+
kind: CompletionItemKind.Value,
|
|
386
|
+
documentation: description,
|
|
387
|
+
});
|
|
388
|
+
}
|
|
389
|
+
});
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
return result;
|
|
393
|
+
}
|
|
176
394
|
//# sourceMappingURL=completion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../../../src/server/tspconfig/completion.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"completion.js","sourceRoot":"","sources":["../../../../src/server/tspconfig/completion.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Position, TextDocument } from "vscode-languageserver-textdocument";
|
|
2
|
+
import { Document, Node, Scalar } from "yaml";
|
|
3
|
+
import { TextRange } from "../core/index.js";
|
|
2
4
|
import { ServerLog } from "./types.js";
|
|
3
|
-
export interface
|
|
5
|
+
export interface YamlPositionDetail {
|
|
4
6
|
/**
|
|
5
7
|
* The path of the yaml node at the position, it consists of object's property, array's index, empty string for potential object property (empty line)
|
|
6
8
|
*/
|
|
@@ -15,10 +17,26 @@ export interface YamlScalarTarget {
|
|
|
15
17
|
* actual value of target in the doc
|
|
16
18
|
*/
|
|
17
19
|
source: string;
|
|
20
|
+
/**
|
|
21
|
+
* The input quotes (double quotes or single quotes)
|
|
22
|
+
*/
|
|
23
|
+
sourceType: Scalar.Type;
|
|
24
|
+
/**
|
|
25
|
+
* The position range of the text in the document, such as [startPos, endPos], see {@link TextRange}
|
|
26
|
+
*/
|
|
27
|
+
sourceRange: TextRange | undefined;
|
|
18
28
|
/**
|
|
19
29
|
* The siblings of the target node
|
|
20
30
|
*/
|
|
21
31
|
siblings: string[];
|
|
32
|
+
/**
|
|
33
|
+
* The parsed yaml document
|
|
34
|
+
*/
|
|
35
|
+
yamlDoc: Document<Node, true>;
|
|
36
|
+
/**
|
|
37
|
+
* The cursor current position
|
|
38
|
+
*/
|
|
39
|
+
cursorPosition: number;
|
|
22
40
|
}
|
|
23
|
-
export declare function
|
|
41
|
+
export declare function resolveYamlPositionDetail(document: TextDocument, position: Position, log: (log: ServerLog) => void): YamlPositionDetail | undefined;
|
|
24
42
|
//# sourceMappingURL=yaml-resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-resolver.d.ts","sourceRoot":"","sources":["../../../src/server/yaml-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"yaml-resolver.d.ts","sourceRoot":"","sources":["../../../src/server/yaml-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EACL,QAAQ,EAMR,IAAI,EAGJ,MAAM,EAEP,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;;;OAIG;IACH,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,UAAU,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,SAAS,GAAG,SAAS,CAAC;IACnC;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;CACxB;AAQD,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,GAC5B,kBAAkB,GAAG,SAAS,CA8JhC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isDocument, isMap, isPair, isScalar, isSeq, parseDocument, visit, } from "yaml";
|
|
2
2
|
import { firstNonWhitespaceCharacterIndex, isWhitespaceStringOrUndefined } from "../utils/misc.js";
|
|
3
|
-
export function
|
|
3
|
+
export function resolveYamlPositionDetail(document, position, log) {
|
|
4
4
|
const pos = document.offsetAt(position);
|
|
5
5
|
const content = document.getText();
|
|
6
6
|
const lines = content.split("\n");
|
|
@@ -30,7 +30,11 @@ export function resolveYamlScalarTarget(document, position, log) {
|
|
|
30
30
|
path: [""],
|
|
31
31
|
type: "key",
|
|
32
32
|
source: "",
|
|
33
|
+
sourceType: "PLAIN",
|
|
33
34
|
siblings: rootProperties,
|
|
35
|
+
yamlDoc,
|
|
36
|
+
sourceRange: undefined,
|
|
37
|
+
cursorPosition: pos,
|
|
34
38
|
};
|
|
35
39
|
}
|
|
36
40
|
for (let i = position.line - 1; i >= 0; i--) {
|
|
@@ -56,7 +60,7 @@ export function resolveYamlScalarTarget(document, position, log) {
|
|
|
56
60
|
});
|
|
57
61
|
return undefined;
|
|
58
62
|
}
|
|
59
|
-
const yp = createYamlPathFromVisitScalarNode(found, pos, log);
|
|
63
|
+
const yp = createYamlPathFromVisitScalarNode(found, pos, log, yamlDoc);
|
|
60
64
|
if (!yp || yp.path.length === 0) {
|
|
61
65
|
log({
|
|
62
66
|
level: "debug",
|
|
@@ -74,7 +78,11 @@ export function resolveYamlScalarTarget(document, position, log) {
|
|
|
74
78
|
path: [...yp.path.slice(0, yp.path.length - 1), ""],
|
|
75
79
|
type: "key",
|
|
76
80
|
source: "",
|
|
81
|
+
sourceType: "PLAIN",
|
|
77
82
|
siblings: [...yp.siblings, yp.source],
|
|
83
|
+
yamlDoc,
|
|
84
|
+
sourceRange: yp.sourceRange,
|
|
85
|
+
cursorPosition: pos,
|
|
78
86
|
};
|
|
79
87
|
}
|
|
80
88
|
break;
|
|
@@ -98,7 +106,7 @@ export function resolveYamlScalarTarget(document, position, log) {
|
|
|
98
106
|
(last.value === null ||
|
|
99
107
|
isMap(last.value) ||
|
|
100
108
|
(isScalar(last.value) && isWhitespaceStringOrUndefined(last.value.source)))) {
|
|
101
|
-
const yp = createYamlPathFromVisitScalarNode(found, pos, log);
|
|
109
|
+
const yp = createYamlPathFromVisitScalarNode(found, pos, log, yamlDoc);
|
|
102
110
|
if (!yp || yp.path.length === 0) {
|
|
103
111
|
log({
|
|
104
112
|
level: "debug",
|
|
@@ -111,9 +119,13 @@ export function resolveYamlScalarTarget(document, position, log) {
|
|
|
111
119
|
path: [...yp.path, ""],
|
|
112
120
|
type: "key",
|
|
113
121
|
source: "",
|
|
122
|
+
sourceType: "PLAIN",
|
|
114
123
|
siblings: isMap(last.value)
|
|
115
124
|
? (last.value?.items.map((item) => item.key.source ?? "") ?? [])
|
|
116
125
|
: [],
|
|
126
|
+
yamlDoc,
|
|
127
|
+
sourceRange: yp.sourceRange,
|
|
128
|
+
cursorPosition: pos,
|
|
117
129
|
};
|
|
118
130
|
}
|
|
119
131
|
break;
|
|
@@ -130,11 +142,11 @@ export function resolveYamlScalarTarget(document, position, log) {
|
|
|
130
142
|
});
|
|
131
143
|
return undefined;
|
|
132
144
|
}
|
|
133
|
-
const yp = createYamlPathFromVisitScalarNode(found, pos, log);
|
|
145
|
+
const yp = createYamlPathFromVisitScalarNode(found, pos, log, yamlDoc);
|
|
134
146
|
return yp;
|
|
135
147
|
}
|
|
136
148
|
}
|
|
137
|
-
function createYamlPathFromVisitScalarNode(info, offset, log) {
|
|
149
|
+
function createYamlPathFromVisitScalarNode(info, offset, log, yamlDoc) {
|
|
138
150
|
const { key, n, path: nodePath } = info;
|
|
139
151
|
if (nodePath.length === 0) {
|
|
140
152
|
log({
|
|
@@ -165,13 +177,22 @@ function createYamlPathFromVisitScalarNode(info, offset, log) {
|
|
|
165
177
|
}
|
|
166
178
|
}
|
|
167
179
|
const last = nodePath[nodePath.length - 1];
|
|
180
|
+
let curSourceRange = undefined;
|
|
181
|
+
if (n.range) {
|
|
182
|
+
const [startPos, endPos] = n.range;
|
|
183
|
+
curSourceRange = { pos: startPos, end: endPos };
|
|
184
|
+
}
|
|
168
185
|
if (isDocument(last)) {
|
|
169
186
|
// we are at the root and the content is a pure text (otherwise there should be a Map under document node first)
|
|
170
187
|
return {
|
|
171
188
|
path: [],
|
|
172
189
|
type: key === null ? "key" : "value",
|
|
173
190
|
source: n.source ?? "",
|
|
191
|
+
sourceType: n.type ?? "PLAIN",
|
|
174
192
|
siblings: [],
|
|
193
|
+
yamlDoc,
|
|
194
|
+
sourceRange: curSourceRange,
|
|
195
|
+
cursorPosition: offset,
|
|
175
196
|
};
|
|
176
197
|
}
|
|
177
198
|
else if (isPair(last)) {
|
|
@@ -191,11 +212,15 @@ function createYamlPathFromVisitScalarNode(info, offset, log) {
|
|
|
191
212
|
path,
|
|
192
213
|
type: "key",
|
|
193
214
|
source: n.source ?? "",
|
|
215
|
+
sourceType: n.type ?? "PLAIN",
|
|
194
216
|
siblings: [],
|
|
217
|
+
yamlDoc,
|
|
218
|
+
sourceRange: curSourceRange,
|
|
219
|
+
cursorPosition: offset,
|
|
195
220
|
};
|
|
196
221
|
}
|
|
197
222
|
else {
|
|
198
|
-
const parent = nodePath[nodePath.length - 2];
|
|
223
|
+
const parent = nodePath.length >= 2 ? nodePath[nodePath.length - 2] : undefined;
|
|
199
224
|
const targetSiblings = isMap(parent)
|
|
200
225
|
? parent.items.filter((item) => item !== last).map((item) => item.key.source ?? "")
|
|
201
226
|
: [];
|
|
@@ -204,6 +229,10 @@ function createYamlPathFromVisitScalarNode(info, offset, log) {
|
|
|
204
229
|
type: key === "key" ? "key" : "value",
|
|
205
230
|
source: n.source ?? "",
|
|
206
231
|
siblings: targetSiblings,
|
|
232
|
+
sourceType: n.type ?? "PLAIN",
|
|
233
|
+
yamlDoc,
|
|
234
|
+
sourceRange: curSourceRange,
|
|
235
|
+
cursorPosition: offset,
|
|
207
236
|
};
|
|
208
237
|
}
|
|
209
238
|
}
|
|
@@ -212,9 +241,13 @@ function createYamlPathFromVisitScalarNode(info, offset, log) {
|
|
|
212
241
|
path: path,
|
|
213
242
|
type: "arr-item",
|
|
214
243
|
source: n.source ?? "",
|
|
244
|
+
sourceType: n.type ?? "PLAIN",
|
|
215
245
|
siblings: last.items
|
|
216
246
|
.filter((i) => i !== n)
|
|
217
247
|
.map((item) => (isScalar(item) ? (item.source ?? "") : "")),
|
|
248
|
+
yamlDoc,
|
|
249
|
+
sourceRange: curSourceRange,
|
|
250
|
+
cursorPosition: offset,
|
|
218
251
|
};
|
|
219
252
|
}
|
|
220
253
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-resolver.js","sourceRoot":"","sources":["../../../src/server/yaml-resolver.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,UAAU,EACV,KAAK,EACL,MAAM,EACN,QAAQ,EACR,KAAK,EAGL,aAAa,EAEb,KAAK,GACN,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"yaml-resolver.js","sourceRoot":"","sources":["../../../src/server/yaml-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,11 @@ export interface PackageJson {
|
|
|
16
16
|
url?: string;
|
|
17
17
|
email?: string;
|
|
18
18
|
};
|
|
19
|
+
/**
|
|
20
|
+
* Subpath imports to define private mappings for imports within the package itself.
|
|
21
|
+
* [Read more.](https://nodejs.org/api/packages.html#subpath-imports)
|
|
22
|
+
*/
|
|
23
|
+
imports?: Imports | null;
|
|
19
24
|
/**
|
|
20
25
|
* Subpath exports to define entry points of the package.
|
|
21
26
|
* [Read more.](https://nodejs.org/api/packages.html#subpath-exports)
|
|
@@ -26,13 +31,25 @@ export interface PackageJson {
|
|
|
26
31
|
peerDependencies?: Record<string, string>;
|
|
27
32
|
devDependencies?: Record<string, string>;
|
|
28
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Entry points of a module, optionally with conditions and subpath imports.
|
|
36
|
+
*/
|
|
37
|
+
export type Imports = {
|
|
38
|
+
[path: string]: string | ImportConditions;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* A mapping of conditions and the paths to which they resolve.
|
|
42
|
+
*/
|
|
43
|
+
type ImportConditions = {
|
|
44
|
+
[condition: string]: string | ImportConditions;
|
|
45
|
+
};
|
|
29
46
|
/**
|
|
30
47
|
* Entry points of a module, optionally with conditions and subpath exports.
|
|
31
48
|
*/
|
|
32
49
|
export type Exports = string | Array<string | ExportConditions> | ExportConditions;
|
|
33
50
|
/**
|
|
34
|
-
|
|
35
|
-
|
|
51
|
+
* A mapping of conditions and the paths to which they resolve.
|
|
52
|
+
*/
|
|
36
53
|
type ExportConditions = {
|
|
37
54
|
[condition: string]: Exports;
|
|
38
55
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-json.d.ts","sourceRoot":"","sources":["../../../src/types/package-json.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,GAAG,gBAAgB,CAAC;AAEnF;;
|
|
1
|
+
{"version":3,"file":"package-json.d.ts","sourceRoot":"","sources":["../../../src/types/package-json.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,KAAK,gBAAgB,GAAG;IACtB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAAC;CAChD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,GAAG,gBAAgB,CAAC;AAEnF;;GAEG;AACH,KAAK,gBAAgB,GAAG;IACtB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;CAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/src/utils/index.js
CHANGED
|
@@ -4,4 +4,5 @@
|
|
|
4
4
|
// ---------------------------------------
|
|
5
5
|
export { DuplicateTracker } from "./duplicate-tracker.js";
|
|
6
6
|
export { Queue, TwoLevelMap, createRekeyableMap, deepClone, deepEquals } from "./misc.js";
|
|
7
|
+
export { useStateMap, useStateSet } from "./state-accessor.js";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,0CAA0C;AAC1C,gGAAgG;AAChG,0CAA0C;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,0CAA0C;AAC1C,gGAAgG;AAChG,0CAA0C;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC"}
|