@actions/languageserver 0.3.36 → 0.3.37
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/cli.bundle.cjs +262 -42
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +16 -3
- package/dist/connection.js.map +1 -1
- package/package.json +4 -4
package/dist/cli.bundle.cjs
CHANGED
|
@@ -4118,18 +4118,18 @@ var require_main2 = __commonJS({
|
|
|
4118
4118
|
}
|
|
4119
4119
|
DocumentSymbol2.is = is;
|
|
4120
4120
|
})(DocumentSymbol = exports3.DocumentSymbol || (exports3.DocumentSymbol = {}));
|
|
4121
|
-
var
|
|
4122
|
-
(function(
|
|
4123
|
-
|
|
4124
|
-
|
|
4125
|
-
|
|
4126
|
-
|
|
4127
|
-
|
|
4128
|
-
|
|
4129
|
-
|
|
4130
|
-
|
|
4131
|
-
|
|
4132
|
-
})(
|
|
4121
|
+
var CodeActionKind3;
|
|
4122
|
+
(function(CodeActionKind4) {
|
|
4123
|
+
CodeActionKind4.Empty = "";
|
|
4124
|
+
CodeActionKind4.QuickFix = "quickfix";
|
|
4125
|
+
CodeActionKind4.Refactor = "refactor";
|
|
4126
|
+
CodeActionKind4.RefactorExtract = "refactor.extract";
|
|
4127
|
+
CodeActionKind4.RefactorInline = "refactor.inline";
|
|
4128
|
+
CodeActionKind4.RefactorRewrite = "refactor.rewrite";
|
|
4129
|
+
CodeActionKind4.Source = "source";
|
|
4130
|
+
CodeActionKind4.SourceOrganizeImports = "source.organizeImports";
|
|
4131
|
+
CodeActionKind4.SourceFixAll = "source.fixAll";
|
|
4132
|
+
})(CodeActionKind3 = exports3.CodeActionKind || (exports3.CodeActionKind = {}));
|
|
4133
4133
|
var CodeActionTriggerKind;
|
|
4134
4134
|
(function(CodeActionTriggerKind2) {
|
|
4135
4135
|
CodeActionTriggerKind2.Invoked = 1;
|
|
@@ -4154,8 +4154,8 @@ var require_main2 = __commonJS({
|
|
|
4154
4154
|
}
|
|
4155
4155
|
CodeActionContext2.is = is;
|
|
4156
4156
|
})(CodeActionContext = exports3.CodeActionContext || (exports3.CodeActionContext = {}));
|
|
4157
|
-
var
|
|
4158
|
-
(function(
|
|
4157
|
+
var CodeAction2;
|
|
4158
|
+
(function(CodeAction3) {
|
|
4159
4159
|
function create(title, kindOrCommandOrEdit, kind) {
|
|
4160
4160
|
var result = { title };
|
|
4161
4161
|
var checkKind = true;
|
|
@@ -4172,13 +4172,13 @@ var require_main2 = __commonJS({
|
|
|
4172
4172
|
}
|
|
4173
4173
|
return result;
|
|
4174
4174
|
}
|
|
4175
|
-
|
|
4175
|
+
CodeAction3.create = create;
|
|
4176
4176
|
function is(value) {
|
|
4177
4177
|
var candidate = value;
|
|
4178
4178
|
return candidate && Is.string(candidate.title) && (candidate.diagnostics === void 0 || Is.typedArray(candidate.diagnostics, Diagnostic.is)) && (candidate.kind === void 0 || Is.string(candidate.kind)) && (candidate.edit !== void 0 || candidate.command !== void 0) && (candidate.command === void 0 || Command.is(candidate.command)) && (candidate.isPreferred === void 0 || Is.boolean(candidate.isPreferred)) && (candidate.edit === void 0 || WorkspaceEdit.is(candidate.edit));
|
|
4179
4179
|
}
|
|
4180
|
-
|
|
4181
|
-
})(
|
|
4180
|
+
CodeAction3.is = is;
|
|
4181
|
+
})(CodeAction2 = exports3.CodeAction || (exports3.CodeAction = {}));
|
|
4182
4182
|
var CodeLens;
|
|
4183
4183
|
(function(CodeLens2) {
|
|
4184
4184
|
function create(range, data) {
|
|
@@ -23246,12 +23246,12 @@ runs:
|
|
|
23246
23246
|
# fs.appendFileSync(process.env.GITHUB_OUTPUT, \\\`greeting=\\\${greeting}\\\\n\\\`);
|
|
23247
23247
|
`;
|
|
23248
23248
|
var ACTION_SNIPPET_NODEJS_USING = `# For more on JavaScript actions (including @actions/toolkit), see:
|
|
23249
|
-
|
|
23250
|
-
|
|
23251
|
-
|
|
23252
|
-
|
|
23253
|
-
|
|
23254
|
-
|
|
23249
|
+
# https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-javascript-action
|
|
23250
|
+
using: node24
|
|
23251
|
+
main: index.js
|
|
23252
|
+
# Sample index.js (vanilla JS, no build required):
|
|
23253
|
+
#
|
|
23254
|
+
# console.log('Hello World');
|
|
23255
23255
|
`;
|
|
23256
23256
|
var ACTION_SNIPPET_COMPOSITE_FULL = `name: '\${1:Action Name}'
|
|
23257
23257
|
description: '\${2:What this action does}'
|
|
@@ -23307,11 +23307,11 @@ runs:
|
|
|
23307
23307
|
echo "greeting=$GREETING" >> $GITHUB_OUTPUT
|
|
23308
23308
|
`;
|
|
23309
23309
|
var ACTION_SNIPPET_COMPOSITE_USING = `# For more on composite actions, see:
|
|
23310
|
-
|
|
23311
|
-
|
|
23312
|
-
|
|
23313
|
-
|
|
23314
|
-
|
|
23310
|
+
# https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-composite-action
|
|
23311
|
+
using: composite
|
|
23312
|
+
steps:
|
|
23313
|
+
- shell: bash
|
|
23314
|
+
run: echo "Hello World"
|
|
23315
23315
|
`;
|
|
23316
23316
|
var ACTION_SNIPPET_DOCKER_FULL = `name: '\${1:Action Name}'
|
|
23317
23317
|
description: '\${2:What this action does}'
|
|
@@ -23369,14 +23369,14 @@ runs:
|
|
|
23369
23369
|
echo "greeting=$GREETING" >> $GITHUB_OUTPUT
|
|
23370
23370
|
`;
|
|
23371
23371
|
var ACTION_SNIPPET_DOCKER_USING = `# For more on Docker actions, see:
|
|
23372
|
-
|
|
23373
|
-
|
|
23374
|
-
|
|
23375
|
-
|
|
23376
|
-
|
|
23377
|
-
|
|
23378
|
-
|
|
23379
|
-
|
|
23372
|
+
# https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-docker-container-action
|
|
23373
|
+
using: docker
|
|
23374
|
+
# 'docker://image:tag' uses pre-built image, 'Dockerfile' builds locally
|
|
23375
|
+
image: '\${1:docker://alpine:3.20}'
|
|
23376
|
+
entrypoint: '\${2:sh}'
|
|
23377
|
+
args:
|
|
23378
|
+
- -c
|
|
23379
|
+
- echo "Hello World"
|
|
23380
23380
|
`;
|
|
23381
23381
|
function filterActionRunsCompletions(values, path, root) {
|
|
23382
23382
|
let runsMapping;
|
|
@@ -23415,7 +23415,7 @@ function filterActionRunsCompletions(values, path, root) {
|
|
|
23415
23415
|
if (!usingValue) {
|
|
23416
23416
|
return values.map((v) => {
|
|
23417
23417
|
if (v.label.toLowerCase() === "using") {
|
|
23418
|
-
return { ...v, sortText: "
|
|
23418
|
+
return { ...v, sortText: "9_using" };
|
|
23419
23419
|
}
|
|
23420
23420
|
return v;
|
|
23421
23421
|
});
|
|
@@ -23453,9 +23453,9 @@ function getActionScaffoldingSnippets(root, path, position) {
|
|
|
23453
23453
|
const isDirectlyInsideRuns = runsMappingIndex !== -1 && runsMappingIndex === path.length - 1;
|
|
23454
23454
|
if (isDirectlyInsideRuns) {
|
|
23455
23455
|
return [
|
|
23456
|
-
createSnippetCompletion("Node.js Action", "Scaffold a Node.js action", ACTION_SNIPPET_NODEJS_USING, position, "
|
|
23457
|
-
createSnippetCompletion("Composite Action", "Scaffold a composite action", ACTION_SNIPPET_COMPOSITE_USING, position, "
|
|
23458
|
-
createSnippetCompletion("Docker Action", "Scaffold a Docker action", ACTION_SNIPPET_DOCKER_USING, position, "
|
|
23456
|
+
createSnippetCompletion("Node.js Action", "Scaffold a Node.js action", ACTION_SNIPPET_NODEJS_USING, position, "0_nodejs"),
|
|
23457
|
+
createSnippetCompletion("Composite Action", "Scaffold a composite action", ACTION_SNIPPET_COMPOSITE_USING, position, "1_composite"),
|
|
23458
|
+
createSnippetCompletion("Docker Action", "Scaffold a Docker action", ACTION_SNIPPET_DOCKER_USING, position, "2_docker")
|
|
23459
23459
|
];
|
|
23460
23460
|
}
|
|
23461
23461
|
const isAtRoot = path.length === 0 || path.length === 1 && path[0] === root;
|
|
@@ -26778,6 +26778,9 @@ var ValidationEvaluator = class extends Evaluator {
|
|
|
26778
26778
|
|
|
26779
26779
|
// ../languageservice/dist/validate-action-reference.js
|
|
26780
26780
|
var import_vscode_languageserver_types4 = __toESM(require_main2(), 1);
|
|
26781
|
+
var DiagnosticCode = {
|
|
26782
|
+
MissingRequiredInputs: "missing-required-inputs"
|
|
26783
|
+
};
|
|
26781
26784
|
async function validateActionReference(diagnostics, stepToken, step, config) {
|
|
26782
26785
|
if (!isMapping(stepToken) || !step || !isActionStep(step) || !config?.actionsMetadataProvider) {
|
|
26783
26786
|
return;
|
|
@@ -26834,10 +26837,19 @@ async function validateActionReference(diagnostics, stepToken, step, config) {
|
|
|
26834
26837
|
const missingRequiredInputs = Object.entries(actionInputs).filter(([inputName, input]) => input.required && !stepInputs.has(inputName) && input.default === void 0);
|
|
26835
26838
|
if (missingRequiredInputs.length > 0) {
|
|
26836
26839
|
const message = missingRequiredInputs.length === 1 ? `Missing required input \`${missingRequiredInputs[0][0]}\`` : `Missing required inputs: ${missingRequiredInputs.map((input) => `\`${input[0]}\``).join(", ")}`;
|
|
26840
|
+
const diagnosticData = {
|
|
26841
|
+
action,
|
|
26842
|
+
missingInputs: missingRequiredInputs.map(([name, input]) => ({
|
|
26843
|
+
name,
|
|
26844
|
+
default: input.default
|
|
26845
|
+
}))
|
|
26846
|
+
};
|
|
26837
26847
|
diagnostics.push({
|
|
26838
26848
|
severity: import_vscode_languageserver_types4.DiagnosticSeverity.Error,
|
|
26839
26849
|
range: mapRange((withKey || stepToken).range),
|
|
26840
|
-
message
|
|
26850
|
+
message,
|
|
26851
|
+
code: DiagnosticCode.MissingRequiredInputs,
|
|
26852
|
+
data: diagnosticData
|
|
26841
26853
|
});
|
|
26842
26854
|
}
|
|
26843
26855
|
}
|
|
@@ -27648,6 +27660,201 @@ function validateBlockScalarChomping(diagnostics, token, parent, key, ancestors)
|
|
|
27648
27660
|
});
|
|
27649
27661
|
}
|
|
27650
27662
|
|
|
27663
|
+
// ../languageservice/dist/code-actions/code-actions.js
|
|
27664
|
+
var import_vscode_languageserver_types7 = __toESM(require_main2(), 1);
|
|
27665
|
+
|
|
27666
|
+
// ../languageservice/dist/code-actions/quickfix/add-missing-inputs.js
|
|
27667
|
+
var addMissingInputsProvider = {
|
|
27668
|
+
diagnosticCodes: [DiagnosticCode.MissingRequiredInputs],
|
|
27669
|
+
createCodeAction(context, diagnostic) {
|
|
27670
|
+
const data = diagnostic.data;
|
|
27671
|
+
if (!data) {
|
|
27672
|
+
return void 0;
|
|
27673
|
+
}
|
|
27674
|
+
const stepInfo = getStepInfo(context, diagnostic.range.start);
|
|
27675
|
+
if (!stepInfo) {
|
|
27676
|
+
return void 0;
|
|
27677
|
+
}
|
|
27678
|
+
const edits = createInputEdits(data.missingInputs, stepInfo);
|
|
27679
|
+
if (!edits || edits.length === 0) {
|
|
27680
|
+
return void 0;
|
|
27681
|
+
}
|
|
27682
|
+
const inputNames = data.missingInputs.map((i) => i.name).join(", ");
|
|
27683
|
+
return {
|
|
27684
|
+
title: `Add missing input${data.missingInputs.length > 1 ? "s" : ""}: ${inputNames}`,
|
|
27685
|
+
edit: {
|
|
27686
|
+
changes: {
|
|
27687
|
+
[context.uri]: edits
|
|
27688
|
+
}
|
|
27689
|
+
}
|
|
27690
|
+
};
|
|
27691
|
+
}
|
|
27692
|
+
};
|
|
27693
|
+
function getStepInfo(context, diagnosticPosition) {
|
|
27694
|
+
const file = { name: context.uri, content: context.documentContent };
|
|
27695
|
+
const parseResult = getOrParseWorkflow(file, context.uri);
|
|
27696
|
+
if (!parseResult.value) {
|
|
27697
|
+
error("Failed to parse workflow for missing inputs quickfix");
|
|
27698
|
+
return void 0;
|
|
27699
|
+
}
|
|
27700
|
+
const { path } = findToken(diagnosticPosition, parseResult.value);
|
|
27701
|
+
const stepToken = findStepInPath(path);
|
|
27702
|
+
if (!stepToken) {
|
|
27703
|
+
error("Could not find step token for missing inputs quickfix");
|
|
27704
|
+
return void 0;
|
|
27705
|
+
}
|
|
27706
|
+
return extractStepInfo(stepToken);
|
|
27707
|
+
}
|
|
27708
|
+
function findStepInPath(path) {
|
|
27709
|
+
for (let i = path.length - 1; i >= 0; i--) {
|
|
27710
|
+
if (path[i].definition?.key === "regular-step" && isMapping(path[i])) {
|
|
27711
|
+
return path[i];
|
|
27712
|
+
}
|
|
27713
|
+
}
|
|
27714
|
+
return void 0;
|
|
27715
|
+
}
|
|
27716
|
+
function extractStepInfo(stepToken) {
|
|
27717
|
+
if (!stepToken.range) {
|
|
27718
|
+
return void 0;
|
|
27719
|
+
}
|
|
27720
|
+
let stepKeyColumn = stepToken.range.start.column;
|
|
27721
|
+
if (stepToken.count > 0) {
|
|
27722
|
+
const firstEntry = stepToken.get(0);
|
|
27723
|
+
if (firstEntry?.key.range) {
|
|
27724
|
+
stepKeyColumn = firstEntry.key.range.start.column;
|
|
27725
|
+
}
|
|
27726
|
+
}
|
|
27727
|
+
let withKey;
|
|
27728
|
+
let withToken;
|
|
27729
|
+
for (const { key, value } of stepToken) {
|
|
27730
|
+
if (key.toString() === "with") {
|
|
27731
|
+
withKey = key;
|
|
27732
|
+
withToken = value;
|
|
27733
|
+
break;
|
|
27734
|
+
}
|
|
27735
|
+
}
|
|
27736
|
+
let indentSize = 2;
|
|
27737
|
+
let withInfo;
|
|
27738
|
+
if (withKey?.range && withToken?.range) {
|
|
27739
|
+
const hasChildren = isMapping(withToken) && withToken.count > 0;
|
|
27740
|
+
let firstChildColumn;
|
|
27741
|
+
if (hasChildren) {
|
|
27742
|
+
const firstChild = withToken.get(0);
|
|
27743
|
+
if (firstChild?.key.range) {
|
|
27744
|
+
firstChildColumn = firstChild.key.range.start.column;
|
|
27745
|
+
indentSize = firstChildColumn - withKey.range.start.column;
|
|
27746
|
+
}
|
|
27747
|
+
}
|
|
27748
|
+
withInfo = {
|
|
27749
|
+
keyColumn: withKey.range.start.column,
|
|
27750
|
+
keyEndLine: withKey.range.end.line,
|
|
27751
|
+
valueEndLine: withToken.range.end.line,
|
|
27752
|
+
hasChildren,
|
|
27753
|
+
firstChildColumn
|
|
27754
|
+
};
|
|
27755
|
+
} else {
|
|
27756
|
+
const zeroIndexedCol = stepKeyColumn - 1;
|
|
27757
|
+
if (zeroIndexedCol >= 10) {
|
|
27758
|
+
indentSize = 4;
|
|
27759
|
+
}
|
|
27760
|
+
}
|
|
27761
|
+
return {
|
|
27762
|
+
stepKeyColumn,
|
|
27763
|
+
stepEndLine: stepToken.range.end.line,
|
|
27764
|
+
indentSize,
|
|
27765
|
+
withInfo
|
|
27766
|
+
};
|
|
27767
|
+
}
|
|
27768
|
+
function createInputEdits(missingInputs, stepInfo) {
|
|
27769
|
+
const formatInputLines = (indent) => missingInputs.map((input) => {
|
|
27770
|
+
const value = input.default ?? '""';
|
|
27771
|
+
return `${indent}${input.name}: ${value}`;
|
|
27772
|
+
});
|
|
27773
|
+
if (stepInfo.withInfo) {
|
|
27774
|
+
const withIndent = stepInfo.withInfo.keyColumn - 1;
|
|
27775
|
+
const inputIndentSize = stepInfo.withInfo.firstChildColumn ? stepInfo.withInfo.firstChildColumn - stepInfo.withInfo.keyColumn : stepInfo.indentSize;
|
|
27776
|
+
const inputIndent = " ".repeat(withIndent + inputIndentSize);
|
|
27777
|
+
const inputLines = formatInputLines(inputIndent);
|
|
27778
|
+
let insertLine;
|
|
27779
|
+
if (stepInfo.withInfo.hasChildren) {
|
|
27780
|
+
insertLine = stepInfo.withInfo.valueEndLine - 1;
|
|
27781
|
+
} else {
|
|
27782
|
+
insertLine = stepInfo.withInfo.keyEndLine;
|
|
27783
|
+
}
|
|
27784
|
+
const insertPosition = {
|
|
27785
|
+
line: insertLine,
|
|
27786
|
+
character: 0
|
|
27787
|
+
};
|
|
27788
|
+
return [
|
|
27789
|
+
{
|
|
27790
|
+
range: { start: insertPosition, end: insertPosition },
|
|
27791
|
+
newText: inputLines.map((line) => line + "\n").join("")
|
|
27792
|
+
}
|
|
27793
|
+
];
|
|
27794
|
+
} else {
|
|
27795
|
+
const withKeyIndent = stepInfo.stepKeyColumn - 1;
|
|
27796
|
+
const withIndent = " ".repeat(withKeyIndent);
|
|
27797
|
+
const inputIndent = " ".repeat(withKeyIndent + stepInfo.indentSize);
|
|
27798
|
+
const inputLines = formatInputLines(inputIndent);
|
|
27799
|
+
const newText = `${withIndent}with:
|
|
27800
|
+
` + inputLines.map((line) => `${line}
|
|
27801
|
+
`).join("");
|
|
27802
|
+
const insertPosition = {
|
|
27803
|
+
line: stepInfo.stepEndLine - 1,
|
|
27804
|
+
character: 0
|
|
27805
|
+
};
|
|
27806
|
+
return [
|
|
27807
|
+
{
|
|
27808
|
+
range: { start: insertPosition, end: insertPosition },
|
|
27809
|
+
newText
|
|
27810
|
+
}
|
|
27811
|
+
];
|
|
27812
|
+
}
|
|
27813
|
+
}
|
|
27814
|
+
|
|
27815
|
+
// ../languageservice/dist/code-actions/quickfix/quickfix-providers.js
|
|
27816
|
+
function getQuickfixProviders(featureFlags) {
|
|
27817
|
+
const providers = [];
|
|
27818
|
+
if (featureFlags?.isEnabled("missingInputsQuickfix")) {
|
|
27819
|
+
providers.push(addMissingInputsProvider);
|
|
27820
|
+
}
|
|
27821
|
+
return providers;
|
|
27822
|
+
}
|
|
27823
|
+
|
|
27824
|
+
// ../languageservice/dist/code-actions/code-actions.js
|
|
27825
|
+
function getCodeActions(params) {
|
|
27826
|
+
const actions = [];
|
|
27827
|
+
const context = {
|
|
27828
|
+
uri: params.uri,
|
|
27829
|
+
documentContent: params.documentContent,
|
|
27830
|
+
featureFlags: params.featureFlags
|
|
27831
|
+
};
|
|
27832
|
+
const providersByKind = /* @__PURE__ */ new Map([
|
|
27833
|
+
[import_vscode_languageserver_types7.CodeActionKind.QuickFix, getQuickfixProviders(params.featureFlags)]
|
|
27834
|
+
// [CodeActionKind.Refactor, getRefactorProviders(params.featureFlags)],
|
|
27835
|
+
// [CodeActionKind.Source, getSourceProviders(params.featureFlags)],
|
|
27836
|
+
// etc
|
|
27837
|
+
]);
|
|
27838
|
+
const requestedKinds = params.only;
|
|
27839
|
+
const kindsToCheck = requestedKinds ? [...providersByKind.keys()].filter((kind) => requestedKinds.some((requested) => kind.startsWith(requested))) : [...providersByKind.keys()];
|
|
27840
|
+
for (const diagnostic of params.diagnostics) {
|
|
27841
|
+
for (const kind of kindsToCheck) {
|
|
27842
|
+
const providers = providersByKind.get(kind) ?? [];
|
|
27843
|
+
for (const provider of providers) {
|
|
27844
|
+
if (provider.diagnosticCodes.includes(diagnostic.code)) {
|
|
27845
|
+
const action = provider.createCodeAction(context, diagnostic);
|
|
27846
|
+
if (action) {
|
|
27847
|
+
action.kind = kind;
|
|
27848
|
+
action.diagnostics = [diagnostic];
|
|
27849
|
+
actions.push(action);
|
|
27850
|
+
}
|
|
27851
|
+
}
|
|
27852
|
+
}
|
|
27853
|
+
}
|
|
27854
|
+
}
|
|
27855
|
+
return actions;
|
|
27856
|
+
}
|
|
27857
|
+
|
|
27651
27858
|
// src/connection.ts
|
|
27652
27859
|
var import_vscode_languageserver = __toESM(require_main7(), 1);
|
|
27653
27860
|
var import_vscode_languageserver_textdocument2 = __toESM(require_main8(), 1);
|
|
@@ -32021,7 +32228,10 @@ function initConnection(connection) {
|
|
|
32021
32228
|
documentLinkProvider: {
|
|
32022
32229
|
resolveProvider: false
|
|
32023
32230
|
},
|
|
32024
|
-
inlayHintProvider: true
|
|
32231
|
+
inlayHintProvider: true,
|
|
32232
|
+
codeActionProvider: {
|
|
32233
|
+
codeActionKinds: [import_vscode_languageserver.CodeActionKind.QuickFix]
|
|
32234
|
+
}
|
|
32025
32235
|
}
|
|
32026
32236
|
};
|
|
32027
32237
|
if (hasWorkspaceFolderCapability) {
|
|
@@ -32102,6 +32312,16 @@ function initConnection(connection) {
|
|
|
32102
32312
|
return getInlayHints(getDocument(documents, textDocument));
|
|
32103
32313
|
});
|
|
32104
32314
|
});
|
|
32315
|
+
connection.onCodeAction((params) => {
|
|
32316
|
+
const document = getDocument(documents, params.textDocument);
|
|
32317
|
+
return getCodeActions({
|
|
32318
|
+
uri: params.textDocument.uri,
|
|
32319
|
+
documentContent: document.getText(),
|
|
32320
|
+
diagnostics: params.context.diagnostics,
|
|
32321
|
+
only: params.context.only,
|
|
32322
|
+
featureFlags
|
|
32323
|
+
});
|
|
32324
|
+
});
|
|
32105
32325
|
documents.listen(connection);
|
|
32106
32326
|
connection.listen();
|
|
32107
32327
|
}
|
package/dist/connection.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAWA,OAAO,EAKL,UAAU,EAcX,MAAM,uBAAuB,CAAC;AAgB/B,wBAAgB,cAAc,CAAC,UAAU,EAAE,UAAU,QAmKpD"}
|
package/dist/connection.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { documentLinks, getInlayHints, hover, validate } from "@actions/languageservice";
|
|
1
|
+
import { documentLinks, getCodeActions, getInlayHints, hover, validate } from "@actions/languageservice";
|
|
2
2
|
import { registerLogger, setLogLevel } from "@actions/languageservice/log";
|
|
3
3
|
import { clearCache, clearCacheEntry } from "@actions/languageservice/utils/workflow-cache";
|
|
4
|
-
import { TextDocuments, TextDocumentSyncKind } from "vscode-languageserver";
|
|
4
|
+
import { CodeActionKind, TextDocuments, TextDocumentSyncKind } from "vscode-languageserver";
|
|
5
5
|
import { TextDocument } from "vscode-languageserver-textdocument";
|
|
6
6
|
import { getClient } from "./client.js";
|
|
7
7
|
import { Commands } from "./commands.js";
|
|
@@ -49,7 +49,10 @@ export function initConnection(connection) {
|
|
|
49
49
|
documentLinkProvider: {
|
|
50
50
|
resolveProvider: false
|
|
51
51
|
},
|
|
52
|
-
inlayHintProvider: true
|
|
52
|
+
inlayHintProvider: true,
|
|
53
|
+
codeActionProvider: {
|
|
54
|
+
codeActionKinds: [CodeActionKind.QuickFix]
|
|
55
|
+
}
|
|
53
56
|
}
|
|
54
57
|
};
|
|
55
58
|
if (hasWorkspaceFolderCapability) {
|
|
@@ -122,6 +125,16 @@ export function initConnection(connection) {
|
|
|
122
125
|
return getInlayHints(getDocument(documents, textDocument));
|
|
123
126
|
});
|
|
124
127
|
});
|
|
128
|
+
connection.onCodeAction((params) => {
|
|
129
|
+
const document = getDocument(documents, params.textDocument);
|
|
130
|
+
return getCodeActions({
|
|
131
|
+
uri: params.textDocument.uri,
|
|
132
|
+
documentContent: document.getText(),
|
|
133
|
+
diagnostics: params.context.diagnostics,
|
|
134
|
+
only: params.context.only,
|
|
135
|
+
featureFlags
|
|
136
|
+
});
|
|
137
|
+
});
|
|
125
138
|
// Make the text document manager listen on the connection
|
|
126
139
|
// for open, change and close text document events
|
|
127
140
|
documents.listen(connection);
|
package/dist/connection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,EACd,aAAa,EACb,KAAK,EACL,QAAQ,EAET,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAC,cAAc,EAAE,WAAW,EAAC,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAC,UAAU,EAAE,eAAe,EAAC,MAAM,+CAA+C,CAAC;AAE1F,OAAO,EAEL,cAAc,EAed,aAAa,EACb,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAC,YAAY,EAAC,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAkB,QAAQ,EAAC,MAAM,cAAc,CAAC;AACvD,OAAO,EAAC,0BAA0B,EAAC,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,MAAM,UAAU,cAAc,CAAC,UAAsB;IACnD,MAAM,SAAS,GAAgC,IAAI,aAAa,CAAC,YAAY,CAAC,CAAC;IAE/E,IAAI,MAA2B,CAAC;IAChC,IAAI,KAAK,GAAwB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,IAAI,QAAQ,EAAE,CAAC;IAE7B,IAAI,4BAA4B,GAAG,KAAK,CAAC;IACzC,IAAI,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;IAEtC,uDAAuD;IACvD,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAEnC,UAAU,CAAC,YAAY,CAAC,CAAC,MAAwB,EAAE,EAAE;QACnD,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAEzC,4BAA4B,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,IAAI,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAEvG,MAAM,OAAO,GAAG,MAAM,CAAC,qBAA8C,CAAC;QAEtE,IAAI,OAAO,CAAC,YAAY,EAAE;YACxB,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;SACnF;QAED,IAAI,OAAO,CAAC,KAAK,EAAE;YACjB,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;SACvB;QAED,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE;YAClC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SAC/B;QAED,YAAY,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAqB;YAC/B,YAAY,EAAE;gBACZ,gBAAgB,EAAE,oBAAoB,CAAC,IAAI;gBAC3C,kBAAkB,EAAE;oBAClB,eAAe,EAAE,KAAK;oBACtB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;iBAC9B;gBACD,aAAa,EAAE,IAAI;gBACnB,oBAAoB,EAAE;oBACpB,eAAe,EAAE,KAAK;iBACvB;gBACD,iBAAiB,EAAE,IAAI;gBACvB,kBAAkB,EAAE;oBAClB,eAAe,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC;iBAC3C;aACF;SACF,CAAC;QAEF,IAAI,4BAA4B,EAAE;YAChC,MAAM,CAAC,YAAY,CAAC,SAAS,GAAG;gBAC9B,gBAAgB,EAAE;oBAChB,SAAS,EAAE,IAAI;iBAChB;aACF,CAAC;SACH;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE;QAC5B,MAAM,eAAe,GAAG,YAAY,CAAC,kBAAkB,EAAE,CAAC;QAC1D,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,kCAAkC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACzF;QAED,IAAI,4BAA4B,EAAE;YAChC,UAAU,CAAC,SAAS,CAAC,2BAA2B,CAAC,GAAG,EAAE;gBACpD,UAAU,EAAE,CAAC;YACf,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IAEH,oEAAoE;IACpE,uEAAuE;IACvE,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE;QACpC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACrC,OAAO,aAAa,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9F,CAAC,CAAC,CAAC;IAEH,KAAK,UAAU,oBAAoB,CAAC,YAA0B;QAC5D,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QAEvF,MAAM,MAAM,GAAqB;YAC/B,mBAAmB,EAAE,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;YAC/D,qBAAqB,EAAE,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;YACnE,uBAAuB,EAAE,0BAA0B,CAAC,MAAM,EAAE,KAAK,CAAC;YAClE,YAAY,EAAE,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;gBACnF,OAAO,MAAM,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAC,IAAI,EAA2B,CAAC,CAAC;YAC3F,CAAC,CAAC;YACF,YAAY;SACb,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,UAAU,CAAC,eAAe,CAAC,EAAC,GAAG,EAAE,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAC,CAAC,CAAC;IACjF,CAAC;IAED,UAAU,CAAC,YAAY,CAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,YAAY,EAA6B,EAA6B,EAAE;QAChH,OAAO,aAAa,CAClB,YAAY,EACZ,KAAK,IAAI,EAAE,CACT,MAAM,YAAY,CAChB,UAAU,EACV,QAAQ,EACR,WAAW,CAAC,SAAS,EAAE,YAAY,CAAC,EACpC,MAAM,EACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAClE,KAAK,CACN,CACJ,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAc,EAAyB,EAAE;QACxF,OAAO,aAAa,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YACvC,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YACvF,OAAO,MAAM,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,QAAQ,EAAE;gBACjE,mBAAmB,EAAE,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC;gBACvD,qBAAqB,EAAE,WAAW,IAAI,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;gBAClF,YAAY,EAAE,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;oBACnF,OAAO,MAAM,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAC,IAAI,EAAC,CAAC,CAAC;gBACjE,CAAC,CAAC;aACH,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,SAAS,CAAC,0BAA0B,EAAE,KAAK,EAAE,MAA4B,EAAE,EAAE;QACtF,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,UAAU,EAAE;YAC1C,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC1E;IACH,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,eAAe,CAAC,KAAK,EAAE,EAAC,YAAY,EAAqB,EAAkC,EAAE;QACtG,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACvF,OAAO,aAAa,CAAC,WAAW,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IACxF,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,EAAC,YAAY,EAAkB,EAA+B,EAAE;QACvG,OAAO,aAAa,CAAC,YAAY,EAAE,GAAG,EAAE;YACtC,OAAO,aAAa,CAAC,WAAW,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,YAAY,CAAC,CAAC,MAAwB,EAAgB,EAAE;QACjE,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QAC7D,OAAO,cAAc,CAAC;YACpB,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG;YAC5B,eAAe,EAAE,QAAQ,CAAC,OAAO,EAAE;YACnC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW;YACvC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;YACzB,YAAY;SACb,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,0DAA0D;IAC1D,kDAAkD;IAClD,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE7B,2BAA2B;IAC3B,UAAU,CAAC,MAAM,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,WAAW,CAAC,SAAsC,EAAE,EAA0B;IACrF,8DAA8D;IAC9D,oEAAoE;IACpE,OAAO,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAE,CAAC;AAChC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@actions/languageserver",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.37",
|
|
4
4
|
"description": "Language server for GitHub Actions",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"actions-languageserver": "./bin/actions-languageserver"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@actions/languageservice": "^0.3.
|
|
52
|
-
"@actions/workflow-parser": "^0.3.
|
|
51
|
+
"@actions/languageservice": "^0.3.37",
|
|
52
|
+
"@actions/workflow-parser": "^0.3.37",
|
|
53
53
|
"@octokit/rest": "^21.1.1",
|
|
54
54
|
"@octokit/types": "^9.0.0",
|
|
55
55
|
"vscode-languageserver": "^8.0.2",
|
|
@@ -78,5 +78,5 @@
|
|
|
78
78
|
"ts-jest": "^29.0.3",
|
|
79
79
|
"typescript": "^4.8.4"
|
|
80
80
|
},
|
|
81
|
-
"gitHead": "
|
|
81
|
+
"gitHead": "2a203ec7425872a205972fca00460edea09f0b6b"
|
|
82
82
|
}
|