@actions/languageserver 0.3.38 → 0.3.40

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.
@@ -18761,7 +18761,6 @@ function objectAccess(obj, idx) {
18761
18761
  var allFeatureKeys = [
18762
18762
  "missingInputsQuickfix",
18763
18763
  "blockScalarChompingWarning",
18764
- "actionScaffoldingSnippets",
18765
18764
  "allowCaseFunction"
18766
18765
  ];
18767
18766
  var FeatureFlags = class {
@@ -23218,9 +23217,6 @@ runs:
23218
23217
  # const greeting = \\\`Hello \\\${name}\\\`;
23219
23218
  # console.log(greeting);
23220
23219
  # fs.appendFileSync(process.env.GITHUB_OUTPUT, \\\`greeting=\\\${greeting}\\\\n\\\`);
23221
- #
23222
- # For JavaScript actions with @actions/toolkit, see:
23223
- # https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-javascript-action
23224
23220
  `;
23225
23221
  var ACTION_SNIPPET_NODEJS_RUNS = `inputs:
23226
23222
  name:
@@ -23430,7 +23426,7 @@ function filterActionRunsCompletions(values, path, root) {
23430
23426
  }
23431
23427
  return values.filter((v) => allowedKeys.has(v.label.toLowerCase()));
23432
23428
  }
23433
- function getActionScaffoldingSnippets(root, path, position) {
23429
+ function getActionScaffoldingSnippets(root, path, position, replaceRange) {
23434
23430
  let runsMapping;
23435
23431
  if (root instanceof MappingToken) {
23436
23432
  for (let i = 0; i < root.count; i++) {
@@ -23453,9 +23449,9 @@ function getActionScaffoldingSnippets(root, path, position) {
23453
23449
  const isDirectlyInsideRuns = runsMappingIndex !== -1 && runsMappingIndex === path.length - 1;
23454
23450
  if (isDirectlyInsideRuns) {
23455
23451
  return [
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")
23452
+ createSnippetCompletion("Node.js Action", "Scaffold a Node.js action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-javascript-action)", ACTION_SNIPPET_NODEJS_USING, position, "0_nodejs", replaceRange),
23453
+ createSnippetCompletion("Composite Action", "Scaffold a composite action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-composite-action)", ACTION_SNIPPET_COMPOSITE_USING, position, "1_composite", replaceRange),
23454
+ createSnippetCompletion("Docker Action", "Scaffold a Docker action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-docker-container-action)", ACTION_SNIPPET_DOCKER_USING, position, "2_docker", replaceRange)
23459
23455
  ];
23460
23456
  }
23461
23457
  const isAtRoot = path.length === 0 || path.length === 1 && path[0] === root;
@@ -23474,20 +23470,22 @@ function getActionScaffoldingSnippets(root, path, position) {
23474
23470
  }
23475
23471
  if (hasNameOrDescription) {
23476
23472
  return [
23477
- createSnippetCompletion("Node.js Action", "Scaffold a Node.js action", ACTION_SNIPPET_NODEJS_RUNS, position, "1_nodejs"),
23478
- createSnippetCompletion("Composite Action", "Scaffold a composite action", ACTION_SNIPPET_COMPOSITE_RUNS, position, "2_composite"),
23479
- createSnippetCompletion("Docker Action", "Scaffold a Docker action", ACTION_SNIPPET_DOCKER_RUNS, position, "3_docker")
23473
+ createSnippetCompletion("Node.js Action", "Scaffold a Node.js action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-javascript-action)", ACTION_SNIPPET_NODEJS_RUNS, position, "1_nodejs", replaceRange),
23474
+ createSnippetCompletion("Composite Action", "Scaffold a composite action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-composite-action)", ACTION_SNIPPET_COMPOSITE_RUNS, position, "2_composite", replaceRange),
23475
+ createSnippetCompletion("Docker Action", "Scaffold a Docker action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-docker-container-action)", ACTION_SNIPPET_DOCKER_RUNS, position, "3_docker", replaceRange)
23480
23476
  ];
23481
23477
  }
23482
23478
  return [
23483
- createSnippetCompletion("Node.js Action", "Scaffold a complete Node.js action", ACTION_SNIPPET_NODEJS_FULL, position, "1_nodejs"),
23484
- createSnippetCompletion("Composite Action", "Scaffold a complete composite action", ACTION_SNIPPET_COMPOSITE_FULL, position, "2_composite"),
23485
- createSnippetCompletion("Docker Action", "Scaffold a complete Docker action", ACTION_SNIPPET_DOCKER_FULL, position, "3_docker")
23479
+ createSnippetCompletion("Node.js Action", "Scaffold a complete Node.js action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-javascript-action)", ACTION_SNIPPET_NODEJS_FULL, position, "1_nodejs", replaceRange),
23480
+ createSnippetCompletion("Composite Action", "Scaffold a complete composite action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-composite-action)", ACTION_SNIPPET_COMPOSITE_FULL, position, "2_composite", replaceRange),
23481
+ createSnippetCompletion("Docker Action", "Scaffold a complete Docker action\n\n[Documentation](https://docs.github.com/en/actions/sharing-automations/creating-actions/creating-a-docker-container-action)", ACTION_SNIPPET_DOCKER_FULL, position, "3_docker", replaceRange)
23486
23482
  ];
23487
23483
  }
23488
- function createSnippetCompletion(label, description, snippetText, position, sortText) {
23484
+ function createSnippetCompletion(label, description, snippetText, position, sortText, replaceRange) {
23485
+ const textEdit = replaceRange ? import_vscode_languageserver_types.TextEdit.replace(replaceRange, snippetText) : import_vscode_languageserver_types.TextEdit.insert(position, snippetText);
23489
23486
  return {
23490
23487
  label,
23488
+ labelDetails: { description: "snippet" },
23491
23489
  kind: import_vscode_languageserver_types.CompletionItemKind.Snippet,
23492
23490
  documentation: {
23493
23491
  kind: "markdown",
@@ -23495,7 +23493,7 @@ function createSnippetCompletion(label, description, snippetText, position, sort
23495
23493
  },
23496
23494
  insertTextFormat: import_vscode_languageserver_types.InsertTextFormat.Snippet,
23497
23495
  sortText,
23498
- textEdit: import_vscode_languageserver_types.TextEdit.insert(position, snippetText)
23496
+ textEdit
23499
23497
  };
23500
23498
  }
23501
23499
 
@@ -25612,10 +25610,6 @@ async function complete2(textDocument, position, config) {
25612
25610
  }
25613
25611
  const escapeHatches = getEscapeHatchCompletions(token, keyToken, indentString, newPos, schema3);
25614
25612
  values.push(...escapeHatches);
25615
- let actionSnippets = [];
25616
- if (isAction && config?.featureFlags?.isEnabled("actionScaffoldingSnippets")) {
25617
- actionSnippets = getActionScaffoldingSnippets(parsedTemplate.value, path, position);
25618
- }
25619
25613
  let replaceRange;
25620
25614
  if (token?.range) {
25621
25615
  replaceRange = mapRange(token.range);
@@ -25632,6 +25626,10 @@ async function complete2(textDocument, position, config) {
25632
25626
  replaceRange = import_vscode_languageserver_types2.Range.create({ line: position.line, character: position.character - val }, position);
25633
25627
  }
25634
25628
  }
25629
+ let actionSnippets = [];
25630
+ if (isAction) {
25631
+ actionSnippets = getActionScaffoldingSnippets(parsedTemplate.value, path, position, replaceRange);
25632
+ }
25635
25633
  const completionItems = values.map((value) => {
25636
25634
  const newText = value.insertText || value.label;
25637
25635
  let textEdit;
@@ -32137,10 +32135,11 @@ function valueProviders(client, repo, cache) {
32137
32135
  }
32138
32136
 
32139
32137
  // src/on-completion.ts
32140
- async function onCompletion(connection, position, document, client, repoContext, cache) {
32138
+ async function onCompletion(connection, position, document, client, repoContext, cache, featureFlags) {
32141
32139
  return await complete2(document, position, {
32142
32140
  valueProviderConfig: repoContext && valueProviders(client, repoContext, cache),
32143
32141
  contextProviderConfig: repoContext && contextProviders(client, repoContext, cache),
32142
+ featureFlags,
32144
32143
  fileProvider: getFileProvider(client, cache, repoContext?.workspaceUri, async (path) => {
32145
32144
  return await connection.sendRequest(Requests.ReadFile, { path });
32146
32145
  })
@@ -32281,7 +32280,8 @@ function initConnection(connection) {
32281
32280
  getDocument(documents, textDocument),
32282
32281
  client,
32283
32282
  repos.find((repo) => textDocument.uri.startsWith(repo.workspaceUri)),
32284
- cache
32283
+ cache,
32284
+ featureFlags
32285
32285
  )
32286
32286
  );
32287
32287
  });
@@ -1 +1 @@
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"}
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,QAoKpD"}
@@ -96,7 +96,7 @@ export function initConnection(connection) {
96
96
  await connection.sendDiagnostics({ uri: textDocument.uri, diagnostics: result });
97
97
  }
98
98
  connection.onCompletion(async ({ position, textDocument }) => {
99
- return timeOperation("completion", async () => await onCompletion(connection, position, getDocument(documents, textDocument), client, repos.find(repo => textDocument.uri.startsWith(repo.workspaceUri)), cache));
99
+ return timeOperation("completion", async () => await onCompletion(connection, position, getDocument(documents, textDocument), client, repos.find(repo => textDocument.uri.startsWith(repo.workspaceUri)), cache, featureFlags));
100
100
  });
101
101
  connection.onHover(async ({ position, textDocument }) => {
102
102
  return timeOperation("hover", async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
+ import type { FeatureFlags } from "@actions/expressions";
1
2
  import { Octokit } from "@octokit/rest";
2
3
  import { CompletionItem, Connection, Position } from "vscode-languageserver";
3
4
  import { TextDocument } from "vscode-languageserver-textdocument";
4
5
  import { RepositoryContext } from "./initializationOptions.js";
5
6
  import { TTLCache } from "./utils/cache.js";
6
- export declare function onCompletion(connection: Connection, position: Position, document: TextDocument, client: Octokit | undefined, repoContext: RepositoryContext | undefined, cache: TTLCache): Promise<CompletionItem[]>;
7
+ export declare function onCompletion(connection: Connection, position: Position, document: TextDocument, client: Octokit | undefined, repoContext: RepositoryContext | undefined, cache: TTLCache, featureFlags?: FeatureFlags): Promise<CompletionItem[]>;
7
8
  //# sourceMappingURL=on-completion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"on-completion.d.ts","sourceRoot":"","sources":["../src/on-completion.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AACtC,OAAO,EAAC,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAC,YAAY,EAAC,MAAM,oCAAoC,CAAC;AAGhE,OAAO,EAAC,iBAAiB,EAAC,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAG1C,wBAAsB,YAAY,CAChC,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,OAAO,GAAG,SAAS,EAC3B,WAAW,EAAE,iBAAiB,GAAG,SAAS,EAC1C,KAAK,EAAE,QAAQ,GACd,OAAO,CAAC,cAAc,EAAE,CAAC,CAQ3B"}
1
+ {"version":3,"file":"on-completion.d.ts","sourceRoot":"","sources":["../src/on-completion.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAC,OAAO,EAAC,MAAM,eAAe,CAAC;AACtC,OAAO,EAAC,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAC,YAAY,EAAC,MAAM,oCAAoC,CAAC;AAGhE,OAAO,EAAC,iBAAiB,EAAC,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAG1C,wBAAsB,YAAY,CAChC,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,OAAO,GAAG,SAAS,EAC3B,WAAW,EAAE,iBAAiB,GAAG,SAAS,EAC1C,KAAK,EAAE,QAAQ,EACf,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,cAAc,EAAE,CAAC,CAS3B"}
@@ -3,10 +3,11 @@ import { contextProviders } from "./context-providers.js";
3
3
  import { getFileProvider } from "./file-provider.js";
4
4
  import { Requests } from "./request.js";
5
5
  import { valueProviders } from "./value-providers.js";
6
- export async function onCompletion(connection, position, document, client, repoContext, cache) {
6
+ export async function onCompletion(connection, position, document, client, repoContext, cache, featureFlags) {
7
7
  return await complete(document, position, {
8
8
  valueProviderConfig: repoContext && valueProviders(client, repoContext, cache),
9
9
  contextProviderConfig: repoContext && contextProviders(client, repoContext, cache),
10
+ featureFlags,
10
11
  fileProvider: getFileProvider(client, cache, repoContext?.workspaceUri, async (path) => {
11
12
  return await connection.sendRequest(Requests.ReadFile, { path });
12
13
  })
@@ -1 +1 @@
1
- {"version":3,"file":"on-completion.js","sourceRoot":"","sources":["../src/on-completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAI3D,OAAO,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAAsB,EACtB,QAAkB,EAClB,QAAsB,EACtB,MAA2B,EAC3B,WAA0C,EAC1C,KAAe;IAEf,OAAO,MAAM,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE;QACxC,mBAAmB,EAAE,WAAW,IAAI,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;QAC9E,qBAAqB,EAAE,WAAW,IAAI,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;QAClF,YAAY,EAAE,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;YACnF,OAAO,MAAM,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAC,IAAI,EAAC,CAAC,CAAC;QACjE,CAAC,CAAC;KACH,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"on-completion.js","sourceRoot":"","sources":["../src/on-completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAK3D,OAAO,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,UAAsB,EACtB,QAAkB,EAClB,QAAsB,EACtB,MAA2B,EAC3B,WAA0C,EAC1C,KAAe,EACf,YAA2B;IAE3B,OAAO,MAAM,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE;QACxC,mBAAmB,EAAE,WAAW,IAAI,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;QAC9E,qBAAqB,EAAE,WAAW,IAAI,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;QAClF,YAAY;QACZ,YAAY,EAAE,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;YACnF,OAAO,MAAM,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAC,IAAI,EAAC,CAAC,CAAC;QACjE,CAAC,CAAC;KACH,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actions/languageserver",
3
- "version": "0.3.38",
3
+ "version": "0.3.40",
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.38",
52
- "@actions/workflow-parser": "^0.3.38",
51
+ "@actions/languageservice": "^0.3.40",
52
+ "@actions/workflow-parser": "^0.3.40",
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": "a8bfe742564ae5ccd57cead8f8d458480db13a01"
81
+ "gitHead": "cd1078fb2fd4b4b47d5809a4f480c0f19aaa8d74"
82
82
  }