@pellux/goodvibes-sdk 0.25.0 → 0.25.2

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.
Files changed (128) hide show
  1. package/dist/_internal/daemon/otlp-protobuf.d.ts +3 -0
  2. package/dist/_internal/daemon/otlp-protobuf.d.ts.map +1 -0
  3. package/dist/_internal/daemon/otlp-protobuf.js +968 -0
  4. package/dist/_internal/daemon/telemetry-routes.d.ts.map +1 -1
  5. package/dist/_internal/daemon/telemetry-routes.js +22 -13
  6. package/dist/_internal/platform/intelligence/lsp/service.d.ts.map +1 -1
  7. package/dist/_internal/platform/intelligence/lsp/service.js +18 -9
  8. package/dist/_internal/platform/providers/anthropic-vertex.d.ts.map +1 -1
  9. package/dist/_internal/platform/providers/anthropic-vertex.js +135 -2
  10. package/dist/_internal/platform/version.js +1 -1
  11. package/dist/_internal/platform/watchers/registry.d.ts.map +1 -1
  12. package/dist/_internal/platform/watchers/registry.js +4 -1
  13. package/package.json +9 -8
  14. package/vendor/bash-language-server/CHANGELOG.md +453 -0
  15. package/vendor/bash-language-server/GOODVIBES_PATCH.md +22 -0
  16. package/vendor/bash-language-server/README.md +230 -0
  17. package/vendor/bash-language-server/out/analyser.d.ts +187 -0
  18. package/vendor/bash-language-server/out/analyser.js +782 -0
  19. package/vendor/bash-language-server/out/analyser.js.map +1 -0
  20. package/vendor/bash-language-server/out/builtins.d.ts +2 -0
  21. package/vendor/bash-language-server/out/builtins.js +71 -0
  22. package/vendor/bash-language-server/out/builtins.js.map +1 -0
  23. package/vendor/bash-language-server/out/cli.d.ts +3 -0
  24. package/vendor/bash-language-server/out/cli.js +74 -0
  25. package/vendor/bash-language-server/out/cli.js.map +1 -0
  26. package/vendor/bash-language-server/out/config.d.ts +88 -0
  27. package/vendor/bash-language-server/out/config.js +96 -0
  28. package/vendor/bash-language-server/out/config.js.map +1 -0
  29. package/vendor/bash-language-server/out/executables.d.ts +19 -0
  30. package/vendor/bash-language-server/out/executables.js +86 -0
  31. package/vendor/bash-language-server/out/executables.js.map +1 -0
  32. package/vendor/bash-language-server/out/parser.d.ts +2 -0
  33. package/vendor/bash-language-server/out/parser.js +36 -0
  34. package/vendor/bash-language-server/out/parser.js.map +1 -0
  35. package/vendor/bash-language-server/out/reserved-words.d.ts +2 -0
  36. package/vendor/bash-language-server/out/reserved-words.js +33 -0
  37. package/vendor/bash-language-server/out/reserved-words.js.map +1 -0
  38. package/vendor/bash-language-server/out/server.d.ts +56 -0
  39. package/vendor/bash-language-server/out/server.js +756 -0
  40. package/vendor/bash-language-server/out/server.js.map +1 -0
  41. package/vendor/bash-language-server/out/shellcheck/config.d.ts +5 -0
  42. package/vendor/bash-language-server/out/shellcheck/config.js +17 -0
  43. package/vendor/bash-language-server/out/shellcheck/config.js.map +1 -0
  44. package/vendor/bash-language-server/out/shellcheck/directive.d.ts +18 -0
  45. package/vendor/bash-language-server/out/shellcheck/directive.js +62 -0
  46. package/vendor/bash-language-server/out/shellcheck/directive.js.map +1 -0
  47. package/vendor/bash-language-server/out/shellcheck/index.d.ts +22 -0
  48. package/vendor/bash-language-server/out/shellcheck/index.js +229 -0
  49. package/vendor/bash-language-server/out/shellcheck/index.js.map +1 -0
  50. package/vendor/bash-language-server/out/shellcheck/types.d.ts +175 -0
  51. package/vendor/bash-language-server/out/shellcheck/types.js +35 -0
  52. package/vendor/bash-language-server/out/shellcheck/types.js.map +1 -0
  53. package/vendor/bash-language-server/out/shfmt/index.d.ts +18 -0
  54. package/vendor/bash-language-server/out/shfmt/index.js +151 -0
  55. package/vendor/bash-language-server/out/shfmt/index.js.map +1 -0
  56. package/vendor/bash-language-server/out/snippets.d.ts +2 -0
  57. package/vendor/bash-language-server/out/snippets.js +671 -0
  58. package/vendor/bash-language-server/out/snippets.js.map +1 -0
  59. package/vendor/bash-language-server/out/types.d.ts +13 -0
  60. package/vendor/bash-language-server/out/types.js +12 -0
  61. package/vendor/bash-language-server/out/types.js.map +1 -0
  62. package/vendor/bash-language-server/out/util/array.d.ts +14 -0
  63. package/vendor/bash-language-server/out/util/array.js +36 -0
  64. package/vendor/bash-language-server/out/util/array.js.map +1 -0
  65. package/vendor/bash-language-server/out/util/async.d.ts +13 -0
  66. package/vendor/bash-language-server/out/util/async.js +24 -0
  67. package/vendor/bash-language-server/out/util/async.js.map +1 -0
  68. package/vendor/bash-language-server/out/util/declarations.d.ts +88 -0
  69. package/vendor/bash-language-server/out/util/declarations.js +295 -0
  70. package/vendor/bash-language-server/out/util/declarations.js.map +1 -0
  71. package/vendor/bash-language-server/out/util/discriminate.d.ts +1 -0
  72. package/vendor/bash-language-server/out/util/discriminate.js +7 -0
  73. package/vendor/bash-language-server/out/util/discriminate.js.map +1 -0
  74. package/vendor/bash-language-server/out/util/fs.d.ts +6 -0
  75. package/vendor/bash-language-server/out/util/fs.js +73 -0
  76. package/vendor/bash-language-server/out/util/fs.js.map +1 -0
  77. package/vendor/bash-language-server/out/util/logger.d.ts +35 -0
  78. package/vendor/bash-language-server/out/util/logger.js +105 -0
  79. package/vendor/bash-language-server/out/util/logger.js.map +1 -0
  80. package/vendor/bash-language-server/out/util/lsp.d.ts +5 -0
  81. package/vendor/bash-language-server/out/util/lsp.js +13 -0
  82. package/vendor/bash-language-server/out/util/lsp.js.map +1 -0
  83. package/vendor/bash-language-server/out/util/platform.d.ts +1 -0
  84. package/vendor/bash-language-server/out/util/platform.js +7 -0
  85. package/vendor/bash-language-server/out/util/platform.js.map +1 -0
  86. package/vendor/bash-language-server/out/util/sh.d.ts +16 -0
  87. package/vendor/bash-language-server/out/util/sh.js +132 -0
  88. package/vendor/bash-language-server/out/util/sh.js.map +1 -0
  89. package/vendor/bash-language-server/out/util/shebang.d.ts +10 -0
  90. package/vendor/bash-language-server/out/util/shebang.js +53 -0
  91. package/vendor/bash-language-server/out/util/shebang.js.map +1 -0
  92. package/vendor/bash-language-server/out/util/sourcing.d.ts +15 -0
  93. package/vendor/bash-language-server/out/util/sourcing.js +182 -0
  94. package/vendor/bash-language-server/out/util/sourcing.js.map +1 -0
  95. package/vendor/bash-language-server/out/util/tree-sitter.d.ts +22 -0
  96. package/vendor/bash-language-server/out/util/tree-sitter.js +110 -0
  97. package/vendor/bash-language-server/out/util/tree-sitter.js.map +1 -0
  98. package/vendor/bash-language-server/package.json +52 -0
  99. package/vendor/bash-language-server/parser.info +2 -0
  100. package/vendor/bash-language-server/tree-sitter-bash.wasm +0 -0
  101. package/dist/_internal/platform/runtime/contracts/index.d.ts +0 -40
  102. package/dist/_internal/platform/runtime/contracts/index.d.ts.map +0 -1
  103. package/dist/_internal/platform/runtime/contracts/index.js +0 -133
  104. package/dist/_internal/platform/runtime/contracts/migrations/index.d.ts +0 -75
  105. package/dist/_internal/platform/runtime/contracts/migrations/index.d.ts.map +0 -1
  106. package/dist/_internal/platform/runtime/contracts/migrations/index.js +0 -158
  107. package/dist/_internal/platform/runtime/contracts/migrations/schemas.d.ts +0 -57
  108. package/dist/_internal/platform/runtime/contracts/migrations/schemas.d.ts.map +0 -1
  109. package/dist/_internal/platform/runtime/contracts/migrations/schemas.js +0 -157
  110. package/dist/_internal/platform/runtime/contracts/types.d.ts +0 -123
  111. package/dist/_internal/platform/runtime/contracts/types.d.ts.map +0 -1
  112. package/dist/_internal/platform/runtime/contracts/types.js +0 -41
  113. package/dist/_internal/platform/runtime/contracts/validators/event-envelope.d.ts +0 -24
  114. package/dist/_internal/platform/runtime/contracts/validators/event-envelope.d.ts.map +0 -1
  115. package/dist/_internal/platform/runtime/contracts/validators/event-envelope.js +0 -104
  116. package/dist/_internal/platform/runtime/contracts/validators/index.d.ts +0 -11
  117. package/dist/_internal/platform/runtime/contracts/validators/index.d.ts.map +0 -1
  118. package/dist/_internal/platform/runtime/contracts/validators/index.js +0 -10
  119. package/dist/_internal/platform/runtime/contracts/validators/runtime-state.d.ts +0 -23
  120. package/dist/_internal/platform/runtime/contracts/validators/runtime-state.d.ts.map +0 -1
  121. package/dist/_internal/platform/runtime/contracts/validators/runtime-state.js +0 -101
  122. package/dist/_internal/platform/runtime/contracts/validators/session.d.ts +0 -24
  123. package/dist/_internal/platform/runtime/contracts/validators/session.d.ts.map +0 -1
  124. package/dist/_internal/platform/runtime/contracts/validators/session.js +0 -103
  125. package/dist/_internal/platform/runtime/contracts/version.d.ts +0 -84
  126. package/dist/_internal/platform/runtime/contracts/version.d.ts.map +0 -1
  127. package/dist/_internal/platform/runtime/contracts/version.js +0 -41
  128. package/scripts/postinstall-patch-minimatch.mjs +0 -285
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyser.js","sourceRoot":"","sources":["../src/analyser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const LIST: string[];
2
+ export declare function isBuiltin(word: string): boolean;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LIST = void 0;
4
+ exports.isBuiltin = isBuiltin;
5
+ // You can generate this list by running `compgen -b` in a bash session
6
+ exports.LIST = [
7
+ '.',
8
+ ':',
9
+ '[',
10
+ 'alias',
11
+ 'bg',
12
+ 'bind',
13
+ 'break',
14
+ 'builtin',
15
+ 'caller',
16
+ 'cd',
17
+ 'command',
18
+ 'compgen',
19
+ 'compopt',
20
+ 'complete',
21
+ 'continue',
22
+ 'declare',
23
+ 'dirs',
24
+ 'disown',
25
+ 'echo',
26
+ 'enable',
27
+ 'eval',
28
+ 'exec',
29
+ 'exit',
30
+ 'export',
31
+ 'false',
32
+ 'fc',
33
+ 'fg',
34
+ 'getopts',
35
+ 'hash',
36
+ 'help',
37
+ 'history',
38
+ 'jobs',
39
+ 'kill',
40
+ 'let',
41
+ 'local',
42
+ 'logout',
43
+ 'popd',
44
+ 'printf',
45
+ 'pushd',
46
+ 'pwd',
47
+ 'read',
48
+ 'readonly',
49
+ 'return',
50
+ 'set',
51
+ 'shift',
52
+ 'shopt',
53
+ 'source',
54
+ 'suspend',
55
+ 'test',
56
+ 'times',
57
+ 'trap',
58
+ 'true',
59
+ 'type',
60
+ 'typeset',
61
+ 'ulimit',
62
+ 'umask',
63
+ 'unalias',
64
+ 'unset',
65
+ 'wait',
66
+ ];
67
+ const SET = new Set(exports.LIST);
68
+ function isBuiltin(word) {
69
+ return SET.has(word);
70
+ }
71
+ //# sourceMappingURL=builtins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../src/builtins.ts"],"names":[],"mappings":";;;AAiEA,8BAEC;AAnED,uEAAuE;AAC1D,QAAA,IAAI,GAAG;IAClB,GAAG;IACH,GAAG;IACH,GAAG;IACH,OAAO;IACP,IAAI;IACJ,MAAM;IACN,OAAO;IACP,SAAS;IACT,QAAQ;IACR,IAAI;IACJ,SAAS;IACT,SAAS;IACT,SAAS;IACT,UAAU;IACV,UAAU;IACV,SAAS;IACT,MAAM;IACN,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,QAAQ;IACR,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,SAAS;IACT,MAAM;IACN,MAAM;IACN,SAAS;IACT,MAAM;IACN,MAAM;IACN,KAAK;IACL,OAAO;IACP,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,OAAO;IACP,KAAK;IACL,MAAM;IACN,UAAU;IACV,QAAQ;IACR,KAAK;IACL,OAAO;IACP,OAAO;IACP,QAAQ;IACR,SAAS;IACT,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,OAAO;IACP,SAAS;IACT,OAAO;IACP,MAAM;CACP,CAAA;AAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAI,CAAC,CAAA;AAEzB,SAAgB,SAAS,CAAC,IAAY;IACpC,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACtB,CAAC"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export declare function runCli(): void;
3
+ export declare function listen(): void;
@@ -0,0 +1,74 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.runCli = runCli;
14
+ exports.listen = listen;
15
+ /* eslint-disable no-console */
16
+ const LSP = require("vscode-languageserver/node");
17
+ const server_1 = require("./server");
18
+ const logger_1 = require("./util/logger");
19
+ const packageJson = require('../package');
20
+ const PADDING = 38;
21
+ const commandsAndFlags = {
22
+ start: 'Start listening on stdin/stdout',
23
+ '-h, --help': 'Display this help and exit',
24
+ '-v, --version': 'Print the version and exit',
25
+ };
26
+ function printHelp() {
27
+ console.log(`Usage:
28
+ ${Object.entries(commandsAndFlags)
29
+ .map(([k, description]) => ` ${`bash-language-server ${k}`.padEnd(PADDING)} ${description}`)
30
+ .join('\n')}
31
+
32
+ Environment variables:
33
+ ${logger_1.LOG_LEVEL_ENV_VAR.padEnd(PADDING)} Set the log level (default: ${logger_1.DEFAULT_LOG_LEVEL})
34
+
35
+ Further documentation: ${packageJson.repository.url}`);
36
+ }
37
+ function runCli() {
38
+ const args = process.argv.slice(2);
39
+ const start = args.find((s) => s == 'start');
40
+ const version = args.find((s) => s == '-v' || s == '--version');
41
+ const help = args.find((s) => s == '-h' || s == '--help');
42
+ if (start) {
43
+ listen();
44
+ }
45
+ else if (version) {
46
+ console.log(packageJson.version);
47
+ }
48
+ else if (help) {
49
+ printHelp();
50
+ }
51
+ else {
52
+ if (args.length > 0) {
53
+ console.error(`Unknown command '${args.join(' ')}'.`);
54
+ }
55
+ printHelp();
56
+ }
57
+ }
58
+ function listen() {
59
+ // Create a connection for the server.
60
+ // The connection uses stdin/stdout for communication.
61
+ const connection = LSP.createConnection(new LSP.StreamMessageReader(process.stdin), new LSP.StreamMessageWriter(process.stdout));
62
+ connection.onInitialize((params) => __awaiter(this, void 0, void 0, function* () {
63
+ const server = yield server_1.default.initialize(connection, params);
64
+ server.register(connection);
65
+ return {
66
+ capabilities: server.capabilities(),
67
+ };
68
+ }));
69
+ connection.listen();
70
+ }
71
+ if (require.main === module) {
72
+ runCli();
73
+ }
74
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;AAgCA,wBAmBC;AAED,wBAmBC;AAvED,+BAA+B;AAC/B,kDAAiD;AAEjD,qCAAiC;AACjC,0CAAoE;AAEpE,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;AAEzC,MAAM,OAAO,GAAG,EAAE,CAAA;AAElB,MAAM,gBAAgB,GAAG;IACvB,KAAK,EAAE,iCAAiC;IACxC,YAAY,EAAE,4BAA4B;IAC1C,eAAe,EAAE,4BAA4B;CACrC,CAAA;AAEV,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;EACZ,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;SAC/B,GAAG,CACF,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,EAAE,CACnB,KAAK,wBAAwB,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,WAAW,EAAE,CACpE;SACA,IAAI,CAAC,IAAI,CAAC;;;IAGT,0BAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,gCAAgC,0BAAiB;;yBAE7D,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAA;AACtD,CAAC;AAED,SAAgB,MAAM;IACpB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAElC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAA;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,WAAW,CAAC,CAAA;IAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAA;IAEzD,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,EAAE,CAAA;IACV,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAClC,CAAC;SAAM,IAAI,IAAI,EAAE,CAAC;QAChB,SAAS,EAAE,CAAA;IACb,CAAC;SAAM,CAAC;QACN,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACvD,CAAC;QACD,SAAS,EAAE,CAAA;IACb,CAAC;AACH,CAAC;AAED,SAAgB,MAAM;IACpB,sCAAsC;IACtC,sDAAsD;IACtD,MAAM,UAAU,GAAG,GAAG,CAAC,gBAAgB,CACrC,IAAI,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,EAC1C,IAAI,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,CAC5C,CAAA;IAED,UAAU,CAAC,YAAY,CACrB,CAAO,MAA4B,EAAiC,EAAE;QACpE,MAAM,MAAM,GAAG,MAAM,gBAAU,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;QAC9D,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QAC3B,OAAO;YACL,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE;SACpC,CAAA;IACH,CAAC,CAAA,CACF,CAAA;IAED,UAAU,CAAC,MAAM,EAAE,CAAA;AACrB,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,MAAM,EAAE,CAAA;AACV,CAAC"}
@@ -0,0 +1,88 @@
1
+ import { z } from 'zod';
2
+ export declare const ConfigSchema: z.ZodObject<{
3
+ backgroundAnalysisMaxFiles: z.ZodDefault<z.ZodNumber>;
4
+ enableSourceErrorDiagnostics: z.ZodDefault<z.ZodBoolean>;
5
+ globPattern: z.ZodDefault<z.ZodString>;
6
+ explainshellEndpoint: z.ZodDefault<z.ZodString>;
7
+ logLevel: z.ZodDefault<z.ZodEnum<["debug", "info", "warning", "error"]>>;
8
+ includeAllWorkspaceSymbols: z.ZodDefault<z.ZodBoolean>;
9
+ shellcheckArguments: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], unknown>>;
10
+ shellcheckPath: z.ZodDefault<z.ZodString>;
11
+ shfmt: z.ZodDefault<z.ZodObject<{
12
+ path: z.ZodDefault<z.ZodString>;
13
+ ignoreEditorconfig: z.ZodDefault<z.ZodBoolean>;
14
+ languageDialect: z.ZodDefault<z.ZodEnum<["auto", "bash", "posix", "mksh", "bats"]>>;
15
+ binaryNextLine: z.ZodDefault<z.ZodBoolean>;
16
+ caseIndent: z.ZodDefault<z.ZodBoolean>;
17
+ funcNextLine: z.ZodDefault<z.ZodBoolean>;
18
+ keepPadding: z.ZodDefault<z.ZodBoolean>;
19
+ simplifyCode: z.ZodDefault<z.ZodBoolean>;
20
+ spaceRedirects: z.ZodDefault<z.ZodBoolean>;
21
+ }, "strip", z.ZodTypeAny, {
22
+ path: string;
23
+ ignoreEditorconfig: boolean;
24
+ languageDialect: "bash" | "auto" | "posix" | "mksh" | "bats";
25
+ binaryNextLine: boolean;
26
+ caseIndent: boolean;
27
+ funcNextLine: boolean;
28
+ keepPadding: boolean;
29
+ simplifyCode: boolean;
30
+ spaceRedirects: boolean;
31
+ }, {
32
+ path?: string | undefined;
33
+ ignoreEditorconfig?: boolean | undefined;
34
+ languageDialect?: "bash" | "auto" | "posix" | "mksh" | "bats" | undefined;
35
+ binaryNextLine?: boolean | undefined;
36
+ caseIndent?: boolean | undefined;
37
+ funcNextLine?: boolean | undefined;
38
+ keepPadding?: boolean | undefined;
39
+ simplifyCode?: boolean | undefined;
40
+ spaceRedirects?: boolean | undefined;
41
+ }>>;
42
+ }, "strip", z.ZodTypeAny, {
43
+ globPattern: string;
44
+ enableSourceErrorDiagnostics: boolean;
45
+ includeAllWorkspaceSymbols: boolean;
46
+ backgroundAnalysisMaxFiles: number;
47
+ explainshellEndpoint: string;
48
+ logLevel: "debug" | "info" | "warning" | "error";
49
+ shellcheckArguments: string[];
50
+ shellcheckPath: string;
51
+ shfmt: {
52
+ path: string;
53
+ ignoreEditorconfig: boolean;
54
+ languageDialect: "bash" | "auto" | "posix" | "mksh" | "bats";
55
+ binaryNextLine: boolean;
56
+ caseIndent: boolean;
57
+ funcNextLine: boolean;
58
+ keepPadding: boolean;
59
+ simplifyCode: boolean;
60
+ spaceRedirects: boolean;
61
+ };
62
+ }, {
63
+ globPattern?: string | undefined;
64
+ enableSourceErrorDiagnostics?: boolean | undefined;
65
+ includeAllWorkspaceSymbols?: boolean | undefined;
66
+ backgroundAnalysisMaxFiles?: number | undefined;
67
+ explainshellEndpoint?: string | undefined;
68
+ logLevel?: "debug" | "info" | "warning" | "error" | undefined;
69
+ shellcheckArguments?: unknown;
70
+ shellcheckPath?: string | undefined;
71
+ shfmt?: {
72
+ path?: string | undefined;
73
+ ignoreEditorconfig?: boolean | undefined;
74
+ languageDialect?: "bash" | "auto" | "posix" | "mksh" | "bats" | undefined;
75
+ binaryNextLine?: boolean | undefined;
76
+ caseIndent?: boolean | undefined;
77
+ funcNextLine?: boolean | undefined;
78
+ keepPadding?: boolean | undefined;
79
+ simplifyCode?: boolean | undefined;
80
+ spaceRedirects?: boolean | undefined;
81
+ } | undefined;
82
+ }>;
83
+ export type Config = z.infer<typeof ConfigSchema>;
84
+ export declare function getConfigFromEnvironmentVariables(): {
85
+ config: Config;
86
+ environmentVariablesUsed: string[];
87
+ };
88
+ export declare function getDefaultConfiguration(): Config;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConfigSchema = void 0;
4
+ exports.getConfigFromEnvironmentVariables = getConfigFromEnvironmentVariables;
5
+ exports.getDefaultConfiguration = getDefaultConfiguration;
6
+ const zod_1 = require("zod");
7
+ const logger_1 = require("./util/logger");
8
+ exports.ConfigSchema = zod_1.z.object({
9
+ // Maximum number of files to analyze in the background. Set to 0 to disable background analysis.
10
+ backgroundAnalysisMaxFiles: zod_1.z.number().int().min(0).default(500),
11
+ // Enable diagnostics for source errors. Ignored if includeAllWorkspaceSymbols is true.
12
+ enableSourceErrorDiagnostics: zod_1.z.boolean().default(false),
13
+ // Glob pattern for finding and parsing shell script files in the workspace. Used by the background analysis features across files.
14
+ globPattern: zod_1.z.string().trim().default('**/*@(.sh|.inc|.bash|.command)'),
15
+ // Configure explainshell server endpoint in order to get hover documentation on flags and options.
16
+ // And empty string will disable the feature.
17
+ explainshellEndpoint: zod_1.z.string().trim().default(''),
18
+ // Log level for the server. To set the right log level from the start please also use the environment variable 'BASH_IDE_LOG_LEVEL'.
19
+ logLevel: zod_1.z.enum(logger_1.LOG_LEVELS).default(logger_1.DEFAULT_LOG_LEVEL),
20
+ // Controls how symbols (e.g. variables and functions) are included and used for completion, documentation, and renaming.
21
+ // If false, then we only include symbols from sourced files (i.e. using non dynamic statements like 'source file.sh' or '. file.sh' or following ShellCheck directives).
22
+ // If true, then all symbols from the workspace are included.
23
+ includeAllWorkspaceSymbols: zod_1.z.boolean().default(false),
24
+ // Additional ShellCheck arguments. Note that we already add the following arguments: --shell, --format, --external-sources."
25
+ shellcheckArguments: zod_1.z
26
+ .preprocess((arg) => {
27
+ let argsList = [];
28
+ if (typeof arg === 'string') {
29
+ argsList = arg.split(' ');
30
+ }
31
+ else if (Array.isArray(arg)) {
32
+ argsList = arg;
33
+ }
34
+ return argsList.map((s) => s.trim()).filter((s) => s.length > 0);
35
+ }, zod_1.z.array(zod_1.z.string()))
36
+ .default([]),
37
+ // Controls the executable used for ShellCheck linting information. An empty string will disable linting.
38
+ shellcheckPath: zod_1.z.string().trim().default('shellcheck'),
39
+ shfmt: zod_1.z
40
+ .object({
41
+ // Controls the executable used for Shfmt formatting. An empty string will disable formatting
42
+ path: zod_1.z.string().trim().default('shfmt'),
43
+ // Ignore shfmt config options in .editorconfig (always use language server config)
44
+ ignoreEditorconfig: zod_1.z.boolean().default(false),
45
+ // Language dialect to use when parsing (bash/posix/mksh/bats).
46
+ languageDialect: zod_1.z.enum(['auto', 'bash', 'posix', 'mksh', 'bats']).default('auto'),
47
+ // Allow boolean operators (like && and ||) to start a line.
48
+ binaryNextLine: zod_1.z.boolean().default(false),
49
+ // Indent patterns in case statements.
50
+ caseIndent: zod_1.z.boolean().default(false),
51
+ // Place function opening braces on a separate line.
52
+ funcNextLine: zod_1.z.boolean().default(false),
53
+ // (Deprecated) Keep column alignment padding.
54
+ keepPadding: zod_1.z.boolean().default(false),
55
+ // Simplify code before formatting.
56
+ simplifyCode: zod_1.z.boolean().default(false),
57
+ // Follow redirection operators with a space.
58
+ spaceRedirects: zod_1.z.boolean().default(false),
59
+ })
60
+ .default({}),
61
+ });
62
+ function getConfigFromEnvironmentVariables() {
63
+ const rawConfig = {
64
+ backgroundAnalysisMaxFiles: toNumber(process.env.BACKGROUND_ANALYSIS_MAX_FILES),
65
+ enableSourceErrorDiagnostics: toBoolean(process.env.ENABLE_SOURCE_ERROR_DIAGNOSTICS),
66
+ explainshellEndpoint: process.env.EXPLAINSHELL_ENDPOINT,
67
+ globPattern: process.env.GLOB_PATTERN,
68
+ includeAllWorkspaceSymbols: toBoolean(process.env.INCLUDE_ALL_WORKSPACE_SYMBOLS),
69
+ logLevel: process.env[logger_1.LOG_LEVEL_ENV_VAR],
70
+ shellcheckArguments: process.env.SHELLCHECK_ARGUMENTS,
71
+ shellcheckPath: process.env.SHELLCHECK_PATH,
72
+ shfmt: {
73
+ path: process.env.SHFMT_PATH,
74
+ ignoreEditorconfig: toBoolean(process.env.SHFMT_IGNORE_EDITORCONFIG),
75
+ languageDialect: process.env.SHFMT_LANGUAGE_DIALECT,
76
+ binaryNextLine: toBoolean(process.env.SHFMT_BINARY_NEXT_LINE),
77
+ caseIndent: toBoolean(process.env.SHFMT_CASE_INDENT),
78
+ funcNextLine: toBoolean(process.env.SHFMT_FUNC_NEXT_LINE),
79
+ keepPadding: toBoolean(process.env.SHFMT_KEEP_PADDING),
80
+ simplifyCode: toBoolean(process.env.SHFMT_SIMPLIFY_CODE),
81
+ spaceRedirects: toBoolean(process.env.SHFMT_SPACE_REDIRECTS),
82
+ },
83
+ };
84
+ const environmentVariablesUsed = Object.entries(rawConfig)
85
+ .filter(([key, value]) => !['undefined', 'object'].includes(typeof value) &&
86
+ ![null, 'logLevel'].includes(key))
87
+ .map(([key]) => key);
88
+ const config = exports.ConfigSchema.parse(rawConfig);
89
+ return { config, environmentVariablesUsed };
90
+ }
91
+ function getDefaultConfiguration() {
92
+ return exports.ConfigSchema.parse({});
93
+ }
94
+ const toBoolean = (s) => typeof s !== 'undefined' ? s === 'true' || s === '1' : undefined;
95
+ const toNumber = (s) => typeof s !== 'undefined' ? parseInt(s, 10) : undefined;
96
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Provides information based on the programs on your PATH
3
+ */
4
+ export default class Executables {
5
+ private executables;
6
+ private constructor();
7
+ /**
8
+ * @param path is expected to to be a ':' separated list of paths.
9
+ */
10
+ static fromPath(path: string): Promise<Executables>;
11
+ /**
12
+ * Find all programs in your PATH
13
+ */
14
+ list(): string[];
15
+ /**
16
+ * Check if the the given {{executable}} exists on the PATH
17
+ */
18
+ isExecutableOnPATH(executable: string): boolean;
19
+ }
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const fs = require("fs");
13
+ const path_1 = require("path");
14
+ const ArrayUtil = require("./util/array");
15
+ const FsUtil = require("./util/fs");
16
+ /**
17
+ * Provides information based on the programs on your PATH
18
+ */
19
+ class Executables {
20
+ constructor(executables) {
21
+ this.executables = new Set(executables);
22
+ }
23
+ /**
24
+ * @param path is expected to to be a ':' separated list of paths.
25
+ */
26
+ static fromPath(path) {
27
+ const paths = path.split(':');
28
+ const promises = paths.map((x) => findExecutablesInPath(x));
29
+ return Promise.all(promises)
30
+ .then(ArrayUtil.flattenArray)
31
+ .then(ArrayUtil.uniq)
32
+ .then((executables) => new Executables(executables));
33
+ }
34
+ /**
35
+ * Find all programs in your PATH
36
+ */
37
+ list() {
38
+ return Array.from(this.executables.values());
39
+ }
40
+ /**
41
+ * Check if the the given {{executable}} exists on the PATH
42
+ */
43
+ isExecutableOnPATH(executable) {
44
+ return this.executables.has(executable);
45
+ }
46
+ }
47
+ exports.default = Executables;
48
+ /**
49
+ * Only returns direct children, or the path itself if it's an executable.
50
+ */
51
+ function findExecutablesInPath(path) {
52
+ return __awaiter(this, void 0, void 0, function* () {
53
+ path = FsUtil.untildify(path);
54
+ try {
55
+ const pathStats = yield fs.promises.lstat(path);
56
+ if (pathStats.isDirectory()) {
57
+ const childrenPaths = yield fs.promises.readdir(path);
58
+ const files = [];
59
+ for (const childrenPath of childrenPaths) {
60
+ try {
61
+ const stats = yield fs.promises.lstat((0, path_1.join)(path, childrenPath));
62
+ if (isExecutableFile(stats)) {
63
+ files.push((0, path_1.basename)(childrenPath));
64
+ }
65
+ }
66
+ catch (error) {
67
+ // Ignore error
68
+ }
69
+ }
70
+ return files;
71
+ }
72
+ else if (isExecutableFile(pathStats)) {
73
+ return [(0, path_1.basename)(path)];
74
+ }
75
+ }
76
+ catch (error) {
77
+ // Ignore error
78
+ }
79
+ return [];
80
+ });
81
+ }
82
+ function isExecutableFile(stats) {
83
+ const isExecutable = !!(1 & parseInt((stats.mode & parseInt('777', 8)).toString(8)[0]));
84
+ return stats.isFile() && isExecutable;
85
+ }
86
+ //# sourceMappingURL=executables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executables.js","sourceRoot":"","sources":["../src/executables.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,yBAAwB;AACxB,+BAAqC;AAErC,0CAAyC;AACzC,oCAAmC;AAEnC;;GAEG;AACH,MAAqB,WAAW;IAG9B,YAAoB,WAAqB;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAA;IACzC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,QAAQ,CAAC,IAAY;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3D,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;aACzB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;aAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aACpB,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC,CAAA;IACxD,CAAC;IAED;;OAEG;IACI,IAAI;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED;;OAEG;IACI,kBAAkB,CAAC,UAAkB;QAC1C,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACzC,CAAC;CACF;AAhCD,8BAgCC;AAED;;GAEG;AACH,SAAe,qBAAqB,CAAC,IAAY;;QAC/C,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAE7B,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAE/C,IAAI,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC5B,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBAErD,MAAM,KAAK,GAAG,EAAE,CAAA;gBAEhB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;oBACzC,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAA,WAAI,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAA;wBAC/D,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;4BAC5B,KAAK,CAAC,IAAI,CAAC,IAAA,eAAQ,EAAC,YAAY,CAAC,CAAC,CAAA;wBACpC,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,eAAe;oBACjB,CAAC;gBACH,CAAC;gBAED,OAAO,KAAK,CAAA;YACd,CAAC;iBAAM,IAAI,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,IAAA,eAAQ,EAAC,IAAI,CAAC,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAe;QACjB,CAAC;QAED,OAAO,EAAE,CAAA;IACX,CAAC;CAAA;AAED,SAAS,gBAAgB,CAAC,KAAe;IACvC,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvF,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,YAAY,CAAA;AACvC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import * as Parser from 'web-tree-sitter';
2
+ export declare function initializeParser(): Promise<Parser>;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.initializeParser = initializeParser;
13
+ const Parser = require("web-tree-sitter");
14
+ const _global = global;
15
+ function initializeParser() {
16
+ return __awaiter(this, void 0, void 0, function* () {
17
+ if (_global.fetch) {
18
+ // NOTE: temporary workaround for emscripten node 18 support.
19
+ // emscripten is used for compiling tree-sitter to wasm.
20
+ // https://github.com/emscripten-core/emscripten/issues/16915
21
+ delete _global.fetch;
22
+ }
23
+ yield Parser.init();
24
+ const parser = new Parser();
25
+ /**
26
+ * See https://github.com/tree-sitter/tree-sitter/tree/master/lib/binding_web#generate-wasm-language-files
27
+ *
28
+ * To compile and use a new tree-sitter-bash version:
29
+ * sh scripts/upgrade-tree-sitter.sh
30
+ */
31
+ const lang = yield Parser.Language.load(`${__dirname}/../tree-sitter-bash.wasm`);
32
+ parser.setLanguage(lang);
33
+ return parser;
34
+ });
35
+ }
36
+ //# sourceMappingURL=parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":";;;;;;;;;;;AAIA,4CAqBC;AAzBD,0CAAyC;AAEzC,MAAM,OAAO,GAAQ,MAAM,CAAA;AAE3B,SAAsB,gBAAgB;;QACpC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,6DAA6D;YAC7D,wDAAwD;YACxD,6DAA6D;YAC7D,OAAO,OAAO,CAAC,KAAK,CAAA;QACtB,CAAC;QAED,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;QACnB,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAA;QAE3B;;;;;WAKG;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,SAAS,2BAA2B,CAAC,CAAA;QAEhF,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QACxB,OAAO,MAAM,CAAA;IACf,CAAC;CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const LIST: string[];
2
+ export declare function isReservedWord(word: string): boolean;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ // https://www.gnu.org/software/bash/manual/html_node/Reserved-Word-Index.html
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.LIST = void 0;
5
+ exports.isReservedWord = isReservedWord;
6
+ exports.LIST = [
7
+ '!',
8
+ '[[',
9
+ ']]',
10
+ '{',
11
+ '}',
12
+ 'case',
13
+ 'do',
14
+ 'done',
15
+ 'elif',
16
+ 'else',
17
+ 'esac',
18
+ 'fi',
19
+ 'for',
20
+ 'function',
21
+ 'if',
22
+ 'in',
23
+ 'select',
24
+ 'then',
25
+ 'time',
26
+ 'until',
27
+ 'while',
28
+ ];
29
+ const SET = new Set(exports.LIST);
30
+ function isReservedWord(word) {
31
+ return SET.has(word);
32
+ }
33
+ //# sourceMappingURL=reserved-words.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reserved-words.js","sourceRoot":"","sources":["../src/reserved-words.ts"],"names":[],"mappings":";AAAA,8EAA8E;;;AA4B9E,wCAEC;AA5BY,QAAA,IAAI,GAAG;IAClB,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,GAAG;IACH,MAAM;IACN,IAAI;IACJ,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,IAAI;IACJ,KAAK;IACL,UAAU;IACV,IAAI;IACJ,IAAI;IACJ,QAAQ;IACR,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;CACR,CAAA;AAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAI,CAAC,CAAA;AAEzB,SAAgB,cAAc,CAAC,IAAY;IACzC,OAAO,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AACtB,CAAC"}