├── .eslintrc.json ├── .github └── workflows │ ├── ci.yaml │ └── release.yaml ├── .gitignore ├── .vscode ├── extensions.json ├── launch.json ├── settings.json └── tasks.json ├── .vscodeignore ├── CHANGELOG.md ├── LICENSE.md ├── README.md ├── flaginfo └── bazel.flaginfo ├── help ├── packages.md ├── repositories.md └── workspaces.md ├── media ├── bazel-icon.svg ├── bazel-wireframe.svg ├── package-gray.svg ├── package.svg ├── stackb-blue.svg ├── stackb.svg ├── workspace-gray.svg └── workspace.svg ├── moduleinfo └── bazel_tools-git.bzl.moduleinfo ├── package-lock.json ├── package.json ├── proto ├── annotations.proto ├── auth.proto ├── bazel_flags.proto ├── build_event_stream.proto ├── build_events.proto ├── build_status.proto ├── bzl.proto ├── client.proto ├── codesearch.proto ├── command_line.proto ├── failure_details.proto ├── http.proto ├── invocation_policy.proto ├── license.proto ├── livegrep.proto ├── nucleate.proto ├── operations.proto ├── option_filters.proto ├── publish_build_event.proto ├── remote_execution.proto ├── semver.proto └── status.proto ├── resources └── css │ ├── bootstrap.min.css │ └── code.css ├── snippets └── bazel.json ├── src ├── api.ts ├── bazeldoc │ ├── configuration.ts │ ├── constants.ts │ ├── feature.ts │ └── hover.ts ├── bazelrc │ ├── configuration.ts │ ├── constants.ts │ ├── feature.ts │ └── flags.ts ├── bezel │ ├── bazel.ts │ ├── bepHandler.ts │ ├── bepRunner.ts │ ├── bes.ts │ ├── bzl.ts │ ├── codesearch.ts │ ├── codesearch │ │ ├── constants.ts │ │ ├── highlighter.ts │ │ ├── panel.ts │ │ └── renderer.ts │ ├── configuration.ts │ ├── constants.ts │ ├── debugger.ts │ ├── download.ts │ ├── feature.ts │ ├── grpcclient.ts │ ├── grpctreedataprovider.ts │ ├── invocations.ts │ ├── lsp.ts │ ├── proto.ts │ ├── remote_cache.ts │ ├── settings.ts │ ├── status.ts │ ├── subscription.ts │ ├── treeView.ts │ ├── ui.ts │ ├── urihandler.ts │ └── workspaceView.ts ├── buildifier │ ├── buildifier.ts │ ├── configuration.ts │ ├── diagnostics.ts │ ├── execute.ts │ ├── formatter.ts │ ├── result.ts │ └── settings.ts ├── buildozer │ ├── buildozer.ts │ ├── configuration.ts │ ├── settings.ts │ └── wizard.ts ├── common.ts ├── constants.ts ├── container.ts ├── download.ts ├── extension.ts ├── multiStepInput.ts ├── proto │ ├── annotations.ts │ ├── auth.ts │ ├── bazel_flags.ts │ ├── bazel_flags │ │ ├── FlagCollection.ts │ │ └── FlagInfo.ts │ ├── blaze │ │ └── invocation_policy │ │ │ ├── AllowValues.ts │ │ │ ├── DisallowValues.ts │ │ │ ├── FlagPolicy.ts │ │ │ ├── InvocationPolicy.ts │ │ │ ├── SetValue.ts │ │ │ └── UseDefault.ts │ ├── build │ │ ├── bazel │ │ │ ├── remote │ │ │ │ └── execution │ │ │ │ │ └── v2 │ │ │ │ │ ├── Action.ts │ │ │ │ │ ├── ActionCache.ts │ │ │ │ │ ├── ActionCacheUpdateCapabilities.ts │ │ │ │ │ ├── ActionResult.ts │ │ │ │ │ ├── BatchReadBlobsRequest.ts │ │ │ │ │ ├── BatchReadBlobsResponse.ts │ │ │ │ │ ├── BatchUpdateBlobsRequest.ts │ │ │ │ │ ├── BatchUpdateBlobsResponse.ts │ │ │ │ │ ├── CacheCapabilities.ts │ │ │ │ │ ├── Capabilities.ts │ │ │ │ │ ├── Command.ts │ │ │ │ │ ├── ContentAddressableStorage.ts │ │ │ │ │ ├── Digest.ts │ │ │ │ │ ├── DigestFunction.ts │ │ │ │ │ ├── Directory.ts │ │ │ │ │ ├── DirectoryNode.ts │ │ │ │ │ ├── ExecuteOperationMetadata.ts │ │ │ │ │ ├── ExecuteRequest.ts │ │ │ │ │ ├── ExecuteResponse.ts │ │ │ │ │ ├── ExecutedActionMetadata.ts │ │ │ │ │ ├── Execution.ts │ │ │ │ │ ├── ExecutionCapabilities.ts │ │ │ │ │ ├── ExecutionPolicy.ts │ │ │ │ │ ├── ExecutionStage.ts │ │ │ │ │ ├── ExecutionTask.ts │ │ │ │ │ ├── FileNode.ts │ │ │ │ │ ├── FindMissingBlobsRequest.ts │ │ │ │ │ ├── FindMissingBlobsResponse.ts │ │ │ │ │ ├── GetActionResultRequest.ts │ │ │ │ │ ├── GetCapabilitiesRequest.ts │ │ │ │ │ ├── GetTreeRequest.ts │ │ │ │ │ ├── GetTreeResponse.ts │ │ │ │ │ ├── LogFile.ts │ │ │ │ │ ├── NodeProperty.ts │ │ │ │ │ ├── OutputDirectory.ts │ │ │ │ │ ├── OutputFile.ts │ │ │ │ │ ├── OutputSymlink.ts │ │ │ │ │ ├── Platform.ts │ │ │ │ │ ├── PriorityCapabilities.ts │ │ │ │ │ ├── PublishOperationResponse.ts │ │ │ │ │ ├── RequestMetadata.ts │ │ │ │ │ ├── ResultsCachePolicy.ts │ │ │ │ │ ├── ServerCapabilities.ts │ │ │ │ │ ├── SizedDirectory.ts │ │ │ │ │ ├── SymlinkAbsolutePathStrategy.ts │ │ │ │ │ ├── SymlinkNode.ts │ │ │ │ │ ├── ToolDetails.ts │ │ │ │ │ ├── Tree.ts │ │ │ │ │ ├── TreeToken.ts │ │ │ │ │ ├── UpdateActionResultRequest.ts │ │ │ │ │ └── WaitExecutionRequest.ts │ │ │ └── semver │ │ │ │ └── SemVer.ts │ │ └── stack │ │ │ ├── auth │ │ │ └── v1beta1 │ │ │ │ ├── AuthService.ts │ │ │ │ ├── LoginRequest.ts │ │ │ │ ├── LoginResponse.ts │ │ │ │ ├── PasswordResetRequest.ts │ │ │ │ ├── PasswordResetResponse.ts │ │ │ │ ├── RegisterRequest.ts │ │ │ │ └── User.ts │ │ │ ├── bezel │ │ │ └── v1beta1 │ │ │ │ ├── ApplicationService.ts │ │ │ │ ├── CancelRequest.ts │ │ │ │ ├── CancelResponse.ts │ │ │ │ ├── CommandHistory.ts │ │ │ │ ├── CommandService.ts │ │ │ │ ├── DeleteCommandHistoryRequest.ts │ │ │ │ ├── DeleteCommandHistoryResponse.ts │ │ │ │ ├── EnvironmentVariable.ts │ │ │ │ ├── ExecRequest.ts │ │ │ │ ├── ExecResponse.ts │ │ │ │ ├── ExternalListWorkspacesRequest.ts │ │ │ │ ├── ExternalListWorkspacesResponse.ts │ │ │ │ ├── ExternalWorkspace.ts │ │ │ │ ├── ExternalWorkspaceService.ts │ │ │ │ ├── FileDownloadRequest.ts │ │ │ │ ├── FileDownloadResponse.ts │ │ │ │ ├── FileKind.ts │ │ │ │ ├── FileService.ts │ │ │ │ ├── GetMetadataRequest.ts │ │ │ │ ├── GetWorkspaceRequest.ts │ │ │ │ ├── History.ts │ │ │ │ ├── Info.ts │ │ │ │ ├── InfoRequest.ts │ │ │ │ ├── InfoResponse.ts │ │ │ │ ├── InfoService.ts │ │ │ │ ├── LabelKind.ts │ │ │ │ ├── ListCommandHistoryRequest.ts │ │ │ │ ├── ListCommandHistoryResponse.ts │ │ │ │ ├── ListPackagesRequest.ts │ │ │ │ ├── ListPackagesResponse.ts │ │ │ │ ├── ListRulesRequest.ts │ │ │ │ ├── ListRulesResponse.ts │ │ │ │ ├── ListWorkspacesRequest.ts │ │ │ │ ├── ListWorkspacesResponse.ts │ │ │ │ ├── Metadata.ts │ │ │ │ ├── Package.ts │ │ │ │ ├── PackageService.ts │ │ │ │ ├── RunRequest.ts │ │ │ │ ├── RunResponse.ts │ │ │ │ ├── ShutdownRequest.ts │ │ │ │ ├── ShutdownResponse.ts │ │ │ │ ├── Workspace.ts │ │ │ │ └── WorkspaceService.ts │ │ │ ├── codesearch │ │ │ └── v1beta1 │ │ │ │ ├── BazelQuery.ts │ │ │ │ ├── CodeSearch.ts │ │ │ │ ├── CreateScopeRequest.ts │ │ │ │ ├── CreateScopeResponse.ts │ │ │ │ ├── GetScopeRequest.ts │ │ │ │ ├── LineBlock.ts │ │ │ │ ├── LineBounds.ts │ │ │ │ ├── ListScopesRequest.ts │ │ │ │ ├── ListScopesResponse.ts │ │ │ │ ├── MergedCodeSearchResult.ts │ │ │ │ ├── MergedSearchResult.ts │ │ │ │ ├── Scope.ts │ │ │ │ ├── ScopedQuery.ts │ │ │ │ └── Scopes.ts │ │ │ ├── license │ │ │ └── v1beta1 │ │ │ │ ├── License.ts │ │ │ │ ├── Licenses.ts │ │ │ │ ├── RenewLicenseRequest.ts │ │ │ │ └── RenewLicenseResponse.ts │ │ │ └── nucleate │ │ │ └── v1beta │ │ │ ├── CancelSubscriptionRequest.ts │ │ │ ├── CancelSubscriptionResponse.ts │ │ │ ├── CreateSubscriptionRequest.ts │ │ │ ├── Customer.ts │ │ │ ├── Customers.ts │ │ │ ├── GetCustomerRequest.ts │ │ │ ├── ListPlansRequest.ts │ │ │ ├── ListPlansResponse.ts │ │ │ ├── PaymentSource.ts │ │ │ ├── Plan.ts │ │ │ ├── Plans.ts │ │ │ ├── Subscription.ts │ │ │ └── Subscriptions.ts │ ├── build_event_stream.ts │ ├── build_event_stream │ │ ├── Aborted.ts │ │ ├── ActionExecuted.ts │ │ ├── BuildEvent.ts │ │ ├── BuildEventId.ts │ │ ├── BuildFinished.ts │ │ ├── BuildMetadata.ts │ │ ├── BuildMetrics.ts │ │ ├── BuildStarted.ts │ │ ├── BuildToolLogs.ts │ │ ├── Configuration.ts │ │ ├── ConvenienceSymlink.ts │ │ ├── ConvenienceSymlinksIdentified.ts │ │ ├── Fetch.ts │ │ ├── File.ts │ │ ├── NamedSetOfFiles.ts │ │ ├── OptionsParsed.ts │ │ ├── OutputGroup.ts │ │ ├── PatternExpanded.ts │ │ ├── Progress.ts │ │ ├── TargetComplete.ts │ │ ├── TargetConfigured.ts │ │ ├── TestResult.ts │ │ ├── TestSize.ts │ │ ├── TestStatus.ts │ │ ├── TestSummary.ts │ │ ├── UnstructuredCommandLine.ts │ │ ├── WorkspaceConfig.ts │ │ └── WorkspaceStatus.ts │ ├── build_events.ts │ ├── build_status.ts │ ├── bzl.ts │ ├── client.ts │ ├── codesearch.ts │ ├── command_line.ts │ ├── command_line │ │ ├── ChunkList.ts │ │ ├── CommandLine.ts │ │ ├── CommandLineSection.ts │ │ ├── Option.ts │ │ └── OptionList.ts │ ├── failure_details.ts │ ├── failure_details │ │ ├── BuildProgress.ts │ │ ├── ClientEnvironment.ts │ │ ├── Crash.ts │ │ ├── ExternalRepository.ts │ │ ├── FailureDetail.ts │ │ ├── FailureDetailMetadata.ts │ │ ├── Interrupted.ts │ │ ├── PackageOptions.ts │ │ ├── RemoteExecution.ts │ │ ├── RemoteOptions.ts │ │ ├── SymlinkForest.ts │ │ └── Throwable.ts │ ├── google │ │ ├── api │ │ │ ├── CustomHttpPattern.ts │ │ │ ├── Http.ts │ │ │ └── HttpRule.ts │ │ ├── devtools │ │ │ └── build │ │ │ │ └── v1 │ │ │ │ ├── BuildEvent.ts │ │ │ │ ├── BuildStatus.ts │ │ │ │ ├── ConsoleOutputStream.ts │ │ │ │ ├── OrderedBuildEvent.ts │ │ │ │ ├── PublishBuildEvent.ts │ │ │ │ ├── PublishBuildToolEventStreamRequest.ts │ │ │ │ ├── PublishBuildToolEventStreamResponse.ts │ │ │ │ ├── PublishLifecycleEventRequest.ts │ │ │ │ └── StreamId.ts │ │ ├── longrunning │ │ │ ├── CancelOperationRequest.ts │ │ │ ├── DeleteOperationRequest.ts │ │ │ ├── GetOperationRequest.ts │ │ │ ├── ListOperationsRequest.ts │ │ │ ├── ListOperationsResponse.ts │ │ │ ├── Operation.ts │ │ │ ├── OperationInfo.ts │ │ │ ├── Operations.ts │ │ │ └── WaitOperationRequest.ts │ │ ├── protobuf │ │ │ ├── Any.ts │ │ │ ├── DescriptorProto.ts │ │ │ ├── Duration.ts │ │ │ ├── Empty.ts │ │ │ ├── EnumDescriptorProto.ts │ │ │ ├── EnumOptions.ts │ │ │ ├── EnumValueDescriptorProto.ts │ │ │ ├── EnumValueOptions.ts │ │ │ ├── FieldDescriptorProto.ts │ │ │ ├── FieldOptions.ts │ │ │ ├── FileDescriptorProto.ts │ │ │ ├── FileDescriptorSet.ts │ │ │ ├── FileOptions.ts │ │ │ ├── GeneratedCodeInfo.ts │ │ │ ├── MessageOptions.ts │ │ │ ├── MethodDescriptorProto.ts │ │ │ ├── MethodOptions.ts │ │ │ ├── OneofDescriptorProto.ts │ │ │ ├── OneofOptions.ts │ │ │ ├── ServiceDescriptorProto.ts │ │ │ ├── ServiceOptions.ts │ │ │ ├── SourceCodeInfo.ts │ │ │ ├── Timestamp.ts │ │ │ └── UninterpretedOption.ts │ │ └── rpc │ │ │ └── Status.ts │ ├── http.ts │ ├── invocation_policy.ts │ ├── license.ts │ ├── livegrep.ts │ ├── livegrep │ │ ├── Bounds.ts │ │ ├── CodeSearch.ts │ │ ├── CodeSearchResult.ts │ │ ├── Empty.ts │ │ ├── FileResult.ts │ │ ├── IndexSpec.ts │ │ ├── InfoRequest.ts │ │ ├── Metadata.ts │ │ ├── PathSpec.ts │ │ ├── Query.ts │ │ ├── RepoSpec.ts │ │ ├── SearchResult.ts │ │ ├── SearchStats.ts │ │ └── ServerInfo.ts │ ├── nucleate.ts │ ├── operations.ts │ ├── option_filters.ts │ ├── options │ │ ├── OptionEffectTag.ts │ │ └── OptionMetadataTag.ts │ ├── publish_build_event.ts │ ├── remote_execution.ts │ ├── semver.ts │ └── status.ts ├── reconfigurable.ts ├── test │ ├── fixtures │ │ ├── bsv.bazeldoc │ │ │ └── BUILD.bazel │ │ └── bsv.buildifier │ │ │ ├── preformatted.bzl │ │ │ └── unformatted.bzl │ ├── integration │ │ ├── buildozer.test.ts │ │ ├── fakewindowapi.ts │ │ ├── feature.bazeldoc.test.ts │ │ ├── feature.bazelrc.test.ts │ │ ├── feature.buildifier.test.ts │ │ └── feature.bzl.codesearch.test.ts │ ├── memento.ts │ ├── runTest.ts │ ├── suite │ │ ├── extension.test.ts │ │ └── index.ts │ └── unit │ │ └── download.test.ts └── vendor │ └── microsoft │ └── vscode-file-downloader │ ├── FileDownloader.ts │ ├── IFileDownloader.ts │ ├── logging │ ├── ConsoleLogger.ts │ ├── ILogger.ts │ └── OutputLogger.ts │ ├── networking │ ├── HttpRequestHandler.ts │ └── IHttpRequestHandler.ts │ └── utility │ ├── Errors.ts │ ├── FileSystem.ts │ ├── RetryUtility.ts │ └── Stream.ts ├── stackb-full.png ├── syntaxes ├── bazel.configuration.json ├── bazel.tmLanguage.json ├── bazel.tmLanguage.license ├── bazelrc.configuration.json ├── bazelrc.tmLanguage.json ├── starlark.configuration.json ├── starlark.tmLanguage.json └── starlark.tmLanguage.license ├── tsconfig.json └── webpack.config.js /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | "parser": "@typescript-eslint/parser", 4 | "parserOptions": { 5 | "ecmaVersion": 6, 6 | "sourceType": "module" 7 | }, 8 | "plugins": [ 9 | "@typescript-eslint" 10 | ], 11 | "rules": { 12 | "@typescript-eslint/class-name-casing": "warn", 13 | "@typescript-eslint/semi": "warn", 14 | "curly": "warn", 15 | "eqeqeq": "warn", 16 | "no-throw-literal": "warn", 17 | "quotes": ["error", "single", { "avoidEscape": true }], 18 | "semi": "off" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /.github/workflows/ci.yaml: -------------------------------------------------------------------------------- 1 | on: 2 | push: 3 | branches: [master] 4 | pull_request: 5 | branches: [master] 6 | jobs: 7 | test: 8 | name: Test 9 | strategy: 10 | matrix: 11 | os: [macos-latest, ubuntu-latest, windows-latest] 12 | runs-on: ${{ matrix.os }} 13 | steps: 14 | - name: Checkout 15 | uses: actions/checkout@v2 16 | - name: Setup Node.js 17 | uses: actions/setup-node@v1 18 | with: 19 | node-version: 12 20 | - name: Install dependencies 21 | run: npm install 22 | - name: Run headless test 23 | uses: GabrielBB/xvfb-action@v1.0 24 | env: 25 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 26 | LICENSE_TOKEN: ${{ secrets.LICENSE_TOKEN }} 27 | with: 28 | run: npm test 29 | -------------------------------------------------------------------------------- /.github/workflows/release.yaml: -------------------------------------------------------------------------------- 1 | on: 2 | release: 3 | types: 4 | - created 5 | jobs: 6 | test: 7 | name: Test 8 | strategy: 9 | matrix: 10 | os: [macos-latest, ubuntu-latest, windows-latest] 11 | runs-on: ${{ matrix.os }} 12 | steps: 13 | - name: Checkout 14 | uses: actions/checkout@v2 15 | - name: Setup Node.js 16 | uses: actions/setup-node@v1 17 | with: 18 | node-version: 12 19 | - name: Install dependencies 20 | run: npm install 21 | - name: Run headless test 22 | uses: GabrielBB/xvfb-action@v1.0 23 | with: 24 | run: npm test 25 | 26 | publish: 27 | name: Release and publish 28 | needs: test 29 | runs-on: ubuntu-18.04 30 | steps: 31 | - name: Checkout 32 | uses: actions/checkout@v2 33 | - name: Setup Node.js 34 | uses: actions/setup-node@v1 35 | with: 36 | node-version: 12 37 | - name: Install dependencies 38 | run: npm install 39 | - name: Release 40 | env: 41 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 42 | NPM_TOKEN: ${{ secrets.NPM_TOKEN }} 43 | run: npx semantic-release 44 | - name: Vscode release plugin 45 | uses: JCofman/vscodeaction@master 46 | env: 47 | PUBLISHER_TOKEN: ${{ secrets.PUBLISHER_TOKEN }} 48 | with: 49 | args: publish -p $PUBLISHER_TOKEN 50 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | out 2 | tmp 3 | node_modules 4 | .vscode-test/ 5 | *.vsix 6 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | // A launch configuration that compiles the extension and then opens it inside a new window 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | { 6 | "version": "0.2.0", 7 | "configurations": [ 8 | { 9 | "name": "Run Extension", 10 | "type": "extensionHost", 11 | "request": "launch", 12 | "runtimeExecutable": "${execPath}", 13 | "args": [ 14 | "--extensionDevelopmentPath=${workspaceFolder}" 15 | ], 16 | "outFiles": [ 17 | "${workspaceFolder}/out/**/*.js" 18 | ], 19 | "preLaunchTask": "${defaultBuildTask}" 20 | }, 21 | { 22 | "name": "Extension Tests", 23 | "type": "extensionHost", 24 | "request": "launch", 25 | "runtimeExecutable": "${execPath}", 26 | "args": [ 27 | "--extensionDevelopmentPath=${workspaceFolder}", 28 | "--extensionTestsPath=${workspaceFolder}/out/test/suite/index" 29 | ], 30 | "outFiles": [ 31 | "${workspaceFolder}/out/test/**/*.js" 32 | ], 33 | "preLaunchTask": "${defaultBuildTask}" 34 | } 35 | ] 36 | } 37 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "files.exclude": { 4 | "out": false // set this to true to hide the "out" folder with the compiled JS files 5 | }, 6 | "search.exclude": { 7 | "out": true // set this to false to include "out" folder in search results 8 | }, 9 | // Turn off tsc task auto detection since we have the necessary tasks as npm scripts 10 | "typescript.tsc.autoDetect": "off" 11 | } -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | // See https://go.microsoft.com/fwlink/?LinkId=733558 2 | // for the documentation about the tasks.json format 3 | { 4 | "version": "2.0.0", 5 | "tasks": [ 6 | { 7 | "type": "npm", 8 | "script": "watch", 9 | "problemMatcher": "$tsc-watch", 10 | "isBackground": true, 11 | "presentation": { 12 | "reveal": "never" 13 | }, 14 | "group": { 15 | "kind": "build", 16 | "isDefault": true 17 | } 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | out/test/** 4 | src/** 5 | tmp/** 6 | docs/** 7 | .gitignore 8 | **/tsconfig.json 9 | **/.eslintrc.json 10 | **/*.map 11 | **/*.ts 12 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Copyright 2021 Stack.Build LLC 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); you 4 | may not use this file except in compliance with the License. You may 5 | obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 12 | implied. See the License for the specific language governing 13 | permissions and limitations under the License. 14 | -------------------------------------------------------------------------------- /flaginfo/bazel.flaginfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stackb/bazel-stack-vscode/a7812c1931e5b885600512df071b0027037987b4/flaginfo/bazel.flaginfo -------------------------------------------------------------------------------- /help/packages.md: -------------------------------------------------------------------------------- 1 | # Bazel Packages View 2 | 3 | The bazel packages view lists filesystem directories on your workstation. 4 | 5 | Click on the tree item to switch / open folder. 6 | 7 | Click on the "Stack" icon to explore it in the browser. 8 | -------------------------------------------------------------------------------- /help/workspaces.md: -------------------------------------------------------------------------------- 1 | # Bazel Workspaces View 2 | 3 | The bazel workspaces view lists filesystem directories on your workstation. 4 | 5 | Click on the tree item to switch / open folder. 6 | 7 | Click on the "Stack" icon to explore it in the browser. 8 | -------------------------------------------------------------------------------- /media/bazel-icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /media/package-gray.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/package.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/stackb-blue.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | bezel 6 | 7 | 8 | -------------------------------------------------------------------------------- /media/stackb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | bezel 6 | 7 | 8 | -------------------------------------------------------------------------------- /media/workspace-gray.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /media/workspace.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /moduleinfo/bazel_tools-git.bzl.moduleinfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stackb/bazel-stack-vscode/a7812c1931e5b885600512df071b0027037987b4/moduleinfo/bazel_tools-git.bzl.moduleinfo -------------------------------------------------------------------------------- /proto/annotations.proto: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015, Google Inc. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | syntax = "proto3"; 16 | 17 | package google.api; 18 | 19 | import "http.proto"; 20 | import "google/protobuf/descriptor.proto"; 21 | 22 | option go_package = "google.golang.org/genproto/googleapis/api/annotations;annotations"; 23 | option java_multiple_files = true; 24 | option java_outer_classname = "AnnotationsProto"; 25 | option java_package = "com.google.api"; 26 | option objc_class_prefix = "GAPI"; 27 | 28 | extend google.protobuf.MethodOptions { 29 | // See `HttpRule`. 30 | HttpRule http = 72295728; 31 | } -------------------------------------------------------------------------------- /proto/auth.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package build.stack.auth.v1beta1; 4 | 5 | service AuthService { 6 | rpc Login(LoginRequest) returns (LoginResponse) {} 7 | rpc Register(RegisterRequest) returns (LoginResponse) {} 8 | rpc PasswordReset(PasswordResetRequest) returns (PasswordResetResponse) {} 9 | } 10 | 11 | message LoginRequest { 12 | // a jwt token 13 | string token = 1; 14 | 15 | // alternatively, one can use a username & password 16 | string username = 2; 17 | string password = 3; 18 | 19 | // 2nd alternative is to specify only github username; it will trigger oauth 20 | // flow and Login() will return only when completed. 21 | string github_username = 4; 22 | } 23 | 24 | message RegisterRequest { 25 | string name = 1; 26 | string email = 2; 27 | string password = 3; 28 | 29 | bool send_confirmation_email = 4; 30 | } 31 | 32 | message PasswordResetRequest { string email = 2; } 33 | 34 | message PasswordResetResponse {} 35 | 36 | message LoginResponse { 37 | // the user details 38 | User user = 1; 39 | // a jwt token that can be used for subsequent auth 40 | string token = 2; 41 | } 42 | 43 | message User { 44 | string handle = 1; 45 | string domain = 2; 46 | string login = 3; 47 | string name = 4; 48 | string avatar_url = 5; 49 | string splash_url = 6; 50 | string email = 7; 51 | bool is_org = 8; 52 | 53 | reserved 9, 10; // was deprecated "customer_id" field 54 | 55 | // if the email of the user has been not been confirmed yet. 56 | bool is_unconfirmed = 11; 57 | } 58 | -------------------------------------------------------------------------------- /proto/bazel_flags.proto: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Bazel Authors. All rights reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | // 15 | // This file contains the protocol buffer representation of a list of supported 16 | // flags for Bazel commands. 17 | syntax = "proto2"; 18 | 19 | option java_outer_classname = "BazelFlagsProto"; 20 | option java_package = "com.google.devtools.build.lib.runtime.commands.proto"; 21 | // option java_api_version = 2; 22 | 23 | package bazel_flags; 24 | 25 | message FlagInfo { 26 | // Name of the flag, without leading dashes. 27 | required string name = 1; 28 | // True if --noname exists, too. 29 | optional bool has_negative_flag = 2 [default = false]; 30 | // Help text of the flag. 31 | optional string documentation = 3; 32 | // List of supported Bazel commands, e.g. ['build', 'test'] 33 | repeated string commands = 4; 34 | // Flag name abbreviation, without leading dash. 35 | optional string abbreviation = 5; 36 | // True if a flag is allowed to occur multiple times in a single arg list. 37 | optional bool allows_multiple = 6 [default = false]; 38 | } 39 | 40 | message FlagCollection { 41 | repeated FlagInfo flag_infos = 1; 42 | } 43 | -------------------------------------------------------------------------------- /proto/semver.proto: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Bazel Authors. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | syntax = "proto3"; 16 | 17 | package build.bazel.semver; 18 | 19 | option csharp_namespace = "Build.Bazel.Semver"; 20 | option go_package = "semver"; 21 | option java_multiple_files = true; 22 | option java_outer_classname = "SemverProto"; 23 | option java_package = "build.bazel.semver"; 24 | option objc_class_prefix = "SMV"; 25 | 26 | // The full version of a given tool. 27 | message SemVer { 28 | // The major version, e.g 10 for 10.2.3. 29 | int32 major = 1; 30 | 31 | // The minor version, e.g. 2 for 10.2.3. 32 | int32 minor = 2; 33 | 34 | // The patch version, e.g 3 for 10.2.3. 35 | int32 patch = 3; 36 | 37 | // The pre-release version. Either this field or major/minor/patch fields 38 | // must be filled. They are mutually exclusive. Pre-release versions are 39 | // assumed to be earlier than any released versions. 40 | string prerelease = 4; 41 | } 42 | -------------------------------------------------------------------------------- /src/bazeldoc/constants.ts: -------------------------------------------------------------------------------- 1 | export enum ConfigSection { 2 | BaseURL = 'base-url', 3 | } 4 | -------------------------------------------------------------------------------- /src/bazeldoc/feature.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import { ConfigSection } from './constants'; 3 | import { BazelDocConfiguration, builtInGroups } from './configuration'; 4 | import { BazelDocGroupHover } from './hover'; 5 | import { Reconfigurable } from '../reconfigurable'; 6 | 7 | export const BazelDocFeatureName = 'bsv.bazeldoc'; 8 | 9 | // this was an early feature; now that we have better LSP completion support, 10 | // these hovers are just annoying. 11 | const useBazelDocGroupHover = false; 12 | 13 | export class BazelDocFeature extends Reconfigurable { 14 | constructor() { 15 | super(BazelDocFeatureName); 16 | 17 | if (useBazelDocGroupHover) { 18 | this.add(new BazelDocGroupHover(this.onDidConfigurationChange.event)); 19 | } 20 | } 21 | 22 | protected async configure(config: vscode.WorkspaceConfiguration): Promise { 23 | const cfg = { 24 | baseUrl: config.get( 25 | ConfigSection.BaseURL, 26 | 'https://docs.bazel.build/versions/master' 27 | ), 28 | groups: builtInGroups, 29 | }; 30 | if (cfg.baseUrl.endsWith('/')) { 31 | cfg.baseUrl = cfg.baseUrl.slice(0, -1); 32 | } 33 | return cfg; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/bazelrc/configuration.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Returns true if the argument is a valid bazel command name. 3 | * 4 | * @param token the token to check 5 | */ 6 | export function isBazelCommand(token: string): boolean { 7 | return BazelCommands.has(token); 8 | } 9 | 10 | export const BazelCommands = new Set([ 11 | 'analyze-profile', 12 | 'aquery', 13 | 'build', 14 | 'canonicalize-flags', 15 | 'clean', 16 | 'config', 17 | 'coverage', 18 | 'cquery', 19 | 'dump', 20 | 'fetch', 21 | 'help', 22 | 'info', 23 | 'license', 24 | 'mobile-install', 25 | 'print_action', 26 | 'query', 27 | 'run', 28 | 'shutdown', 29 | 'sync', 30 | 'test', 31 | 'version', 32 | ]); 33 | -------------------------------------------------------------------------------- /src/bazelrc/constants.ts: -------------------------------------------------------------------------------- 1 | export enum CommandName { 2 | RunCommand = 'bsv.bazelrc.runCommand', 3 | RerunCommand = 'bsv.bazelrc.rerunCommand', 4 | } 5 | -------------------------------------------------------------------------------- /src/bazelrc/feature.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import { ConfigurationContext } from '../common'; 3 | import { Reconfigurable } from '../reconfigurable'; 4 | import { BazelFlagSupport } from './flags'; 5 | 6 | export const BazelrcFeatureName = 'bsv.bazelrc'; 7 | 8 | export class BazelrcFeature extends Reconfigurable { 9 | constructor(configCtx: ConfigurationContext) { 10 | super(BazelrcFeatureName); 11 | this.add(new BazelFlagSupport(configCtx, this.onDidConfigurationChange.event)); 12 | } 13 | 14 | async configure(config: vscode.WorkspaceConfiguration): Promise { 15 | return; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/bezel/bazel.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import { BazelConfiguration, BazelSettings } from './configuration'; 3 | import { LaunchableComponent, LaunchArgs, Status } from './status'; 4 | import { BazelInfo, Bzl } from './bzl'; 5 | import { CommandName } from './constants'; 6 | 7 | export class BazelServer extends LaunchableComponent { 8 | private info: BazelInfo | undefined; 9 | 10 | constructor( 11 | public readonly settings: BazelSettings, 12 | public readonly bzl: Bzl, 13 | ) { 14 | super('BAZ', settings, CommandName.LaunchBazelServer, 'bazel'); 15 | } 16 | 17 | async shouldLaunch(e: Error): Promise { 18 | return false; 19 | } 20 | 21 | async launchInternal(): Promise { 22 | } 23 | 24 | async getBazelInfo(): Promise { 25 | if (this.info) { 26 | return this.info; 27 | } 28 | if (this.bzl.status !== Status.READY) { 29 | return; 30 | } 31 | this.info = await this.bzl.getBazelInfo(); 32 | return this.info; 33 | } 34 | 35 | async getLaunchArgs(): Promise { 36 | const cfg = await this.settings.get(); 37 | return { 38 | command: [cfg.executable || 'bazel'], 39 | showSuccessfulLaunchTerminal: true, 40 | showFailedLaunchTerminal: true, 41 | }; 42 | } 43 | 44 | async runInBazelTerminal(args: string[]) { 45 | if (this.status !== Status.READY) { 46 | return; 47 | } 48 | return this.handleCommandLaunch(args); 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /src/bezel/codesearch/constants.ts: -------------------------------------------------------------------------------- 1 | export enum QueryOptions { 2 | QuoteMeta = 'quotemeta', 3 | } 4 | 5 | export const OutputChannelName = 'codesearch'; 6 | 7 | export const PanelTitle = OutputChannelName; 8 | -------------------------------------------------------------------------------- /src/bezel/grpcclient.ts: -------------------------------------------------------------------------------- 1 | import * as grpc from '@grpc/grpc-js'; 2 | import * as vscode from 'vscode'; 3 | 4 | export interface Closeable { 5 | close(): void; 6 | } 7 | 8 | export class GRPCClient implements vscode.Disposable { 9 | protected disposables: vscode.Disposable[] = []; 10 | private closeables: Closeable[] = []; 11 | 12 | constructor( 13 | protected onError: (err: grpc.ServiceError) => void, 14 | protected defaultDeadlineSeconds = 30 15 | ) {} 16 | 17 | protected getDeadline(seconds?: number): grpc.Deadline { 18 | const deadline = new Date(); 19 | deadline.setSeconds(deadline.getSeconds() + (seconds || this.defaultDeadlineSeconds)); 20 | return deadline; 21 | } 22 | 23 | protected handleError(err: grpc.ServiceError): grpc.ServiceError { 24 | this.onError(err); 25 | return err; 26 | } 27 | 28 | protected addCloseable(client: T): T { 29 | this.closeables.push(client); 30 | return client; 31 | } 32 | 33 | public dispose() { 34 | for (const closeable of this.closeables) { 35 | closeable.close(); 36 | } 37 | this.closeables.length = 0; 38 | for (const disposable of this.disposables) { 39 | disposable.dispose(); 40 | } 41 | this.disposables.length = 0; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/bezel/urihandler.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import { CommandName } from './constants'; 3 | 4 | export class UriHandler implements vscode.UriHandler { 5 | constructor(disposables: vscode.Disposable[]) { 6 | disposables.push(vscode.window.registerUriHandler(this)); 7 | } 8 | 9 | public async handleUri(uri: vscode.Uri) { 10 | // bring the bazel view into focus 11 | await vscode.commands.executeCommand('workbench.view.extension.bazel-explorer'); 12 | switch (uri.path) { 13 | case '/login': 14 | return this.login(uri); 15 | } 16 | } 17 | 18 | private async login(uri: vscode.Uri): Promise { 19 | const query = parseQuery(uri); 20 | const token = query['token']; 21 | const release = query['release']; 22 | if (!(token && release)) { 23 | return; 24 | } 25 | return vscode.commands.executeCommand(CommandName.Login, release, token); 26 | } 27 | } 28 | 29 | function parseQuery(uri: vscode.Uri): { [key: string]: string } { 30 | return uri.query.split('&').reduce((prev: any, current) => { 31 | const queryString = current.split('='); 32 | prev[queryString[0]] = queryString[1]; 33 | return prev; 34 | }, {}); 35 | } 36 | -------------------------------------------------------------------------------- /src/buildifier/buildifier.ts: -------------------------------------------------------------------------------- 1 | import { RunnableComponent, Status } from '../bezel/status'; 2 | import { BuildifierConfiguration } from './configuration'; 3 | import { BuildifierDiagnosticsManager } from './diagnostics'; 4 | import { BuildifierFormatter } from './formatter'; 5 | import { BuildifierSettings } from './settings'; 6 | 7 | export class Buildifier extends RunnableComponent { 8 | constructor(public readonly settings: BuildifierSettings) { 9 | super('BDF', settings); 10 | 11 | new BuildifierDiagnosticsManager(settings, this.disposables); 12 | new BuildifierFormatter(settings, this.disposables); 13 | } 14 | 15 | async startInternal(): Promise { 16 | // start calls settings such that we discover a configuration error upon 17 | // startup. 18 | await this.settings.get(); 19 | } 20 | 21 | async stopInternal(): Promise { } 22 | } 23 | -------------------------------------------------------------------------------- /src/buildifier/configuration.ts: -------------------------------------------------------------------------------- 1 | import { ComponentConfiguration } from '../bezel/configuration'; 2 | 3 | /** 4 | * Configuration for the buildifier module. 5 | */ 6 | export interface BuildifierConfiguration extends ComponentConfiguration { 7 | githubOwner: string; 8 | githubRepo: string; 9 | githubRelease: string; 10 | executable: string | undefined; 11 | fixOnFormat: boolean; 12 | } 13 | -------------------------------------------------------------------------------- /src/buildozer/configuration.ts: -------------------------------------------------------------------------------- 1 | import { ComponentConfiguration } from '../bezel/configuration'; 2 | 3 | /** 4 | * Configuration for the buildifier module. 5 | */ 6 | export interface BuildozerConfiguration extends ComponentConfiguration { 7 | githubOwner: string; 8 | githubRepo: string; 9 | githubRelease: string; 10 | executable: string | undefined; 11 | options: string[] | undefined; 12 | } 13 | -------------------------------------------------------------------------------- /src/buildozer/settings.ts: -------------------------------------------------------------------------------- 1 | import * as fs from 'graceful-fs'; 2 | import * as vscode from 'vscode'; 3 | import { Settings } from '../bezel/settings'; 4 | import { BuildozerConfiguration as BuildozerConfiguration } from './configuration'; 5 | import { Container } from '../container'; 6 | import path = require('path'); 7 | import { BuildifierSettings, maybeInstallBuildtool } from '../buildifier/settings'; 8 | import { ConfigurationContext } from '../common'; 9 | 10 | export class BuildozerSettings extends Settings { 11 | constructor(configCtx: ConfigurationContext, section: string, private buildifier: BuildifierSettings) { 12 | super(configCtx, section); 13 | } 14 | 15 | protected async configure( 16 | config: vscode.WorkspaceConfiguration 17 | ): Promise { 18 | const cfg: BuildozerConfiguration = { 19 | enabled: config.get('enabled', true), 20 | githubOwner: config.get('githubOwner', 'bazelbuild'), 21 | githubRepo: config.get('githubRepo', 'buildtools'), 22 | githubRelease: config.get('githubRelease', '4.2.3'), 23 | executable: config.get('executable'), 24 | options: config.get('options'), 25 | }; 26 | 27 | if (!cfg.executable) { 28 | cfg.executable = await maybeInstallBuildtool( 29 | cfg.githubOwner, 30 | cfg.githubRepo, 31 | cfg.githubRelease, 32 | path.join(this.configCtx.globalStorageUri.fsPath, 'bsv.buildifier'), 33 | 'buildozer', 34 | ); 35 | } 36 | 37 | if (!fs.existsSync(cfg.executable)) { 38 | throw new Error( 39 | `could not activate: buildozer executable file "${cfg.executable}" not found.` 40 | ); 41 | } 42 | 43 | return cfg; 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/constants.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import { State } from 'vscode-languageclient'; 3 | 4 | export const ExtensionID = 'stackbuild.bazel-stack-vscode'; 5 | export const ExtensionName = 'bazel-stack-vscode'; 6 | export const AIKey = '7193a682-d12f-49a5-a515-ef00ab3f0992'; 7 | 8 | export enum Telemetry { 9 | ExtensionActivate = 'ext.activate', 10 | ExtensionDeactivate = 'ext.deactivate', 11 | BzlRunTask = 'bzl.runTask', 12 | BzlEventBuildStarted = 'bzl.event.started', 13 | } 14 | 15 | export enum CommandName { 16 | OpenSetting = 'bsv.openExtensionSetting', 17 | } 18 | 19 | export enum BuiltInCommands { 20 | SetContext = 'setContext', 21 | ClosePanel = 'workbench.action.closePanel', 22 | Open = 'vscode.open', 23 | OpenFolder = 'vscode.openFolder', 24 | OpenSettings = 'workbench.action.openSettings', 25 | Reload = 'workbench.action.reloadWindow', 26 | RevealFileInOS = 'revealFileInOS', 27 | FocusTerminal = 'workbench.action.terminal.focus', 28 | } 29 | 30 | export function setCommandContext(key: string, value: any) { 31 | return vscode.commands.executeCommand(BuiltInCommands.SetContext, key, value); 32 | } 33 | 34 | /** 35 | * Options for the OpenSetting command 36 | */ 37 | type OpenSettingCommandOptions = { 38 | // The query string 39 | q: string; 40 | }; 41 | 42 | export async function openExtensionSetting(options: OpenSettingCommandOptions): Promise { 43 | return vscode.commands.executeCommand(BuiltInCommands.OpenSettings, options?.q); 44 | } 45 | -------------------------------------------------------------------------------- /src/container.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import TelemetryReporter from 'vscode-extension-telemetry'; 3 | import { ConfigurationContext, ITelemetry } from './common'; 4 | import { AIKey, ExtensionID, Telemetry } from './constants'; 5 | import path = require('path'); 6 | import ILogger from './vendor/microsoft/vscode-file-downloader/logging/ILogger'; 7 | 8 | export class Container { 9 | private static _configCtx: ConfigurationContext; 10 | private static _telemetry: TelemetryReporter; 11 | 12 | static initialize(configCtx: ConfigurationContext, disposables: vscode.Disposable[]) { 13 | this._configCtx = configCtx; 14 | 15 | const packageJSON = vscode.extensions.getExtension(ExtensionID)?.packageJSON; 16 | const version = packageJSON.version; 17 | 18 | Container._telemetry = new TelemetryReporter(ExtensionID, version, AIKey); 19 | disposables.push(Container._telemetry); 20 | 21 | Container.telemetry.sendTelemetryEvent(Telemetry.ExtensionActivate); 22 | } 23 | 24 | static get logger(): ILogger { 25 | return Container._configCtx.logger; 26 | } 27 | 28 | static get telemetry(): ITelemetry { 29 | return Container._telemetry; 30 | } 31 | 32 | static media(name: MediaIconName): vscode.Uri { 33 | return vscode.Uri.file(path.join(this._configCtx.extensionUri.fsPath, 'media', name)); 34 | } 35 | 36 | static dispose() { 37 | Container._telemetry.dispose(); 38 | } 39 | } 40 | 41 | export enum MediaIconName { 42 | BazelIcon = 'bazel-icon.svg', 43 | BazelWireframe = 'bazel-wireframe.svg', 44 | Workspace = 'workspace.svg', 45 | WorkspaceGray = 'workspace-gray.svg', 46 | Package = 'package.svg', 47 | PackageGray = 'package-gray.svg', 48 | StackBuild = 'stackb.svg', 49 | StackBuildBlue = 'stackb-blue.svg', 50 | } 51 | -------------------------------------------------------------------------------- /src/extension.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import { API } from './api'; 3 | import { BazelDocFeature } from './bazeldoc/feature'; 4 | import { BazelrcFeature } from './bazelrc/feature'; 5 | import { BazelStackVSCodeAPI } from 'bazel-stack-vscode-api'; 6 | import { BzlFeature } from './bezel/feature'; 7 | import { Telemetry, CommandName, openExtensionSetting, ExtensionName } from './constants'; 8 | import { Container } from './container'; 9 | import { ConfigurationContext } from './common'; 10 | import OutputLogger from './vendor/microsoft/vscode-file-downloader/logging/OutputLogger'; 11 | 12 | const api = new API(); 13 | 14 | export function activate(ctx: vscode.ExtensionContext): BazelStackVSCodeAPI { 15 | try { 16 | const logger = new OutputLogger(ExtensionName, ctx); 17 | const configCtx = new ConfigurationContext( 18 | logger, 19 | ctx.extensionUri, 20 | ctx.globalStorageUri, 21 | ctx.workspaceState, 22 | ); 23 | Container.initialize(configCtx, ctx.subscriptions); 24 | 25 | ctx.subscriptions.push( 26 | vscode.commands.registerCommand(CommandName.OpenSetting, openExtensionSetting) 27 | ); 28 | 29 | 30 | ctx.subscriptions.push(new BazelDocFeature()); 31 | ctx.subscriptions.push(new BazelrcFeature(configCtx)); 32 | ctx.subscriptions.push(new BzlFeature(api, ctx, configCtx)); 33 | 34 | Container.telemetry.sendTelemetryEvent(Telemetry.ExtensionActivate); 35 | 36 | return api; 37 | } catch (err) { 38 | console.log('Activation err', err); 39 | throw err; 40 | } 41 | } 42 | 43 | export function deactivate() { 44 | Container.telemetry.sendTelemetryEvent(Telemetry.ExtensionDeactivate); 45 | Container.dispose(); 46 | } 47 | -------------------------------------------------------------------------------- /src/proto/annotations.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | google: { 10 | api: { 11 | CustomHttpPattern: MessageTypeDefinition; 12 | Http: MessageTypeDefinition; 13 | HttpRule: MessageTypeDefinition; 14 | }; 15 | protobuf: { 16 | DescriptorProto: MessageTypeDefinition; 17 | EnumDescriptorProto: MessageTypeDefinition; 18 | EnumOptions: MessageTypeDefinition; 19 | EnumValueDescriptorProto: MessageTypeDefinition; 20 | EnumValueOptions: MessageTypeDefinition; 21 | FieldDescriptorProto: MessageTypeDefinition; 22 | FieldOptions: MessageTypeDefinition; 23 | FileDescriptorProto: MessageTypeDefinition; 24 | FileDescriptorSet: MessageTypeDefinition; 25 | FileOptions: MessageTypeDefinition; 26 | GeneratedCodeInfo: MessageTypeDefinition; 27 | MessageOptions: MessageTypeDefinition; 28 | MethodDescriptorProto: MessageTypeDefinition; 29 | MethodOptions: MessageTypeDefinition; 30 | OneofDescriptorProto: MessageTypeDefinition; 31 | OneofOptions: MessageTypeDefinition; 32 | ServiceDescriptorProto: MessageTypeDefinition; 33 | ServiceOptions: MessageTypeDefinition; 34 | SourceCodeInfo: MessageTypeDefinition; 35 | UninterpretedOption: MessageTypeDefinition; 36 | }; 37 | }; 38 | } 39 | -------------------------------------------------------------------------------- /src/proto/auth.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | import type { 5 | AuthServiceClient as _build_stack_auth_v1beta1_AuthServiceClient, 6 | AuthServiceDefinition as _build_stack_auth_v1beta1_AuthServiceDefinition, 7 | } from './build/stack/auth/v1beta1/AuthService'; 8 | 9 | type SubtypeConstructor any, Subtype> = { 10 | new (...args: ConstructorParameters): Subtype; 11 | }; 12 | 13 | export interface ProtoGrpcType { 14 | build: { 15 | stack: { 16 | auth: { 17 | v1beta1: { 18 | AuthService: SubtypeConstructor< 19 | typeof grpc.Client, 20 | _build_stack_auth_v1beta1_AuthServiceClient 21 | > & { service: _build_stack_auth_v1beta1_AuthServiceDefinition }; 22 | LoginRequest: MessageTypeDefinition; 23 | LoginResponse: MessageTypeDefinition; 24 | PasswordResetRequest: MessageTypeDefinition; 25 | PasswordResetResponse: MessageTypeDefinition; 26 | RegisterRequest: MessageTypeDefinition; 27 | User: MessageTypeDefinition; 28 | }; 29 | }; 30 | }; 31 | }; 32 | } 33 | -------------------------------------------------------------------------------- /src/proto/bazel_flags.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | bazel_flags: { 10 | FlagCollection: MessageTypeDefinition; 11 | FlagInfo: MessageTypeDefinition; 12 | }; 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/bazel_flags/FlagCollection.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bazel_flags.proto 2 | 3 | import type { 4 | FlagInfo as _bazel_flags_FlagInfo, 5 | FlagInfo__Output as _bazel_flags_FlagInfo__Output, 6 | } from '../bazel_flags/FlagInfo'; 7 | 8 | export interface FlagCollection { 9 | flagInfos?: _bazel_flags_FlagInfo[]; 10 | } 11 | 12 | export interface FlagCollection__Output { 13 | flagInfos: _bazel_flags_FlagInfo__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/bazel_flags/FlagInfo.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bazel_flags.proto 2 | 3 | export interface FlagInfo { 4 | /** 5 | * Name of the flag, without leading dashes. 6 | */ 7 | name?: string; 8 | /** 9 | * True if --noname exists, too. 10 | */ 11 | hasNegativeFlag?: boolean; 12 | /** 13 | * Help text of the flag. 14 | */ 15 | documentation?: string; 16 | /** 17 | * List of supported Bazel commands, e.g. ['build', 'test'] 18 | */ 19 | commands?: string[]; 20 | /** 21 | * Flag name abbreviation, without leading dash. 22 | */ 23 | abbreviation?: string; 24 | /** 25 | * True if a flag is allowed to occur multiple times in a single arg list. 26 | */ 27 | allowsMultiple?: boolean; 28 | } 29 | 30 | export interface FlagInfo__Output { 31 | /** 32 | * Name of the flag, without leading dashes. 33 | */ 34 | name: string; 35 | /** 36 | * True if --noname exists, too. 37 | */ 38 | hasNegativeFlag: boolean; 39 | /** 40 | * Help text of the flag. 41 | */ 42 | documentation: string; 43 | /** 44 | * List of supported Bazel commands, e.g. ['build', 'test'] 45 | */ 46 | commands: string[]; 47 | /** 48 | * Flag name abbreviation, without leading dash. 49 | */ 50 | abbreviation: string; 51 | /** 52 | * True if a flag is allowed to occur multiple times in a single arg list. 53 | */ 54 | allowsMultiple: boolean; 55 | } 56 | -------------------------------------------------------------------------------- /src/proto/blaze/invocation_policy/InvocationPolicy.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/invocation_policy.proto 2 | 3 | import type { 4 | FlagPolicy as _blaze_invocation_policy_FlagPolicy, 5 | FlagPolicy__Output as _blaze_invocation_policy_FlagPolicy__Output, 6 | } from '../../blaze/invocation_policy/FlagPolicy'; 7 | 8 | /** 9 | * The --invocation_policy flag takes a base64-encoded binary-serialized or text 10 | * formatted InvocationPolicy message. 11 | */ 12 | export interface InvocationPolicy { 13 | /** 14 | * Order matters. 15 | * After expanding policies on expansion flags or flags with implicit 16 | * requirements, only the final policy on a specific flag will be enforced 17 | * onto the user's command line. 18 | */ 19 | flagPolicies?: _blaze_invocation_policy_FlagPolicy[]; 20 | } 21 | 22 | /** 23 | * The --invocation_policy flag takes a base64-encoded binary-serialized or text 24 | * formatted InvocationPolicy message. 25 | */ 26 | export interface InvocationPolicy__Output { 27 | /** 28 | * Order matters. 29 | * After expanding policies on expansion flags or flags with implicit 30 | * requirements, only the final policy on a specific flag will be enforced 31 | * onto the user's command line. 32 | */ 33 | flagPolicies: _blaze_invocation_policy_FlagPolicy__Output[]; 34 | } 35 | -------------------------------------------------------------------------------- /src/proto/blaze/invocation_policy/UseDefault.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/invocation_policy.proto 2 | 3 | export interface UseDefault {} 4 | 5 | export interface UseDefault__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/ActionCacheUpdateCapabilities.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * Describes the server/instance capabilities for updating the action cache. 5 | */ 6 | export interface ActionCacheUpdateCapabilities { 7 | /** 8 | * Describes the server/instance capabilities for updating the action cache. 9 | */ 10 | updateEnabled?: boolean; 11 | } 12 | 13 | /** 14 | * Describes the server/instance capabilities for updating the action cache. 15 | */ 16 | export interface ActionCacheUpdateCapabilities__Output { 17 | /** 18 | * Describes the server/instance capabilities for updating the action cache. 19 | */ 20 | updateEnabled: boolean; 21 | } 22 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/BatchReadBlobsRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Digest as _build_bazel_remote_execution_v2_Digest, 5 | Digest__Output as _build_bazel_remote_execution_v2_Digest__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Digest'; 7 | 8 | /** 9 | * A request message for 10 | * [ContentAddressableStorage.BatchReadBlobs][build.bazel.remote.execution.v2.ContentAddressableStorage.BatchReadBlobs]. 11 | */ 12 | export interface BatchReadBlobsRequest { 13 | /** 14 | * The instance of the execution system to operate against. A server may 15 | * support multiple instances of the execution system (with their own workers, 16 | * storage, caches, etc.). The server MAY require use of this field to select 17 | * between them in an implementation-defined fashion, otherwise it can be 18 | * omitted. 19 | */ 20 | instanceName?: string; 21 | /** 22 | * The individual blob digests. 23 | */ 24 | digests?: _build_bazel_remote_execution_v2_Digest[]; 25 | } 26 | 27 | /** 28 | * A request message for 29 | * [ContentAddressableStorage.BatchReadBlobs][build.bazel.remote.execution.v2.ContentAddressableStorage.BatchReadBlobs]. 30 | */ 31 | export interface BatchReadBlobsRequest__Output { 32 | /** 33 | * The instance of the execution system to operate against. A server may 34 | * support multiple instances of the execution system (with their own workers, 35 | * storage, caches, etc.). The server MAY require use of this field to select 36 | * between them in an implementation-defined fashion, otherwise it can be 37 | * omitted. 38 | */ 39 | instanceName: string; 40 | /** 41 | * The individual blob digests. 42 | */ 43 | digests: _build_bazel_remote_execution_v2_Digest__Output[]; 44 | } 45 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/DigestFunction.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | // Original file: proto/remote_execution.proto 4 | 5 | export enum _build_bazel_remote_execution_v2_DigestFunction_Value { 6 | /** 7 | * It is an error for the server to return this value. 8 | */ 9 | UNKNOWN = 0, 10 | /** 11 | * The SHA-256 digest function. 12 | */ 13 | SHA256 = 1, 14 | /** 15 | * The SHA-1 digest function. 16 | */ 17 | SHA1 = 2, 18 | /** 19 | * The MD5 digest function. 20 | */ 21 | MD5 = 3, 22 | /** 23 | * The Microsoft "VSO-Hash" paged SHA256 digest function. 24 | * See 25 | * https://github.com/microsoft/BuildXL/blob/master/Documentation/Specs/PagedHash.md 26 | * . 27 | */ 28 | VSO = 4, 29 | /** 30 | * The SHA-384 digest function. 31 | */ 32 | SHA384 = 5, 33 | /** 34 | * The SHA-512 digest function. 35 | */ 36 | SHA512 = 6, 37 | } 38 | 39 | /** 40 | * The digest function used for converting values into keys for CAS and Action 41 | * Cache. 42 | */ 43 | export interface DigestFunction {} 44 | 45 | /** 46 | * The digest function used for converting values into keys for CAS and Action 47 | * Cache. 48 | */ 49 | export interface DigestFunction__Output {} 50 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/DirectoryNode.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Digest as _build_bazel_remote_execution_v2_Digest, 5 | Digest__Output as _build_bazel_remote_execution_v2_Digest__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Digest'; 7 | 8 | /** 9 | * A `DirectoryNode` represents a child of a 10 | * [Directory][build.bazel.remote.execution.v2.Directory] which is itself 11 | * a `Directory` and its associated metadata. 12 | */ 13 | export interface DirectoryNode { 14 | /** 15 | * The name of the directory. 16 | */ 17 | name?: string; 18 | /** 19 | * The digest of the 20 | * [Directory][build.bazel.remote.execution.v2.Directory] object 21 | * represented. See [Digest][build.bazel.remote.execution.v2.Digest] 22 | * for information about how to take the digest of a proto message. 23 | */ 24 | digest?: _build_bazel_remote_execution_v2_Digest | null; 25 | } 26 | 27 | /** 28 | * A `DirectoryNode` represents a child of a 29 | * [Directory][build.bazel.remote.execution.v2.Directory] which is itself 30 | * a `Directory` and its associated metadata. 31 | */ 32 | export interface DirectoryNode__Output { 33 | /** 34 | * The name of the directory. 35 | */ 36 | name: string; 37 | /** 38 | * The digest of the 39 | * [Directory][build.bazel.remote.execution.v2.Directory] object 40 | * represented. See [Digest][build.bazel.remote.execution.v2.Digest] 41 | * for information about how to take the digest of a proto message. 42 | */ 43 | digest: _build_bazel_remote_execution_v2_Digest__Output | null; 44 | } 45 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/ExecutionPolicy.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * An `ExecutionPolicy` can be used to control the scheduling of the action. 5 | */ 6 | export interface ExecutionPolicy { 7 | /** 8 | * The priority (relative importance) of this action. Generally, a lower value 9 | * means that the action should be run sooner than actions having a greater 10 | * priority value, but the interpretation of a given value is server- 11 | * dependent. A priority of 0 means the *default* priority. Priorities may be 12 | * positive or negative, and such actions should run later or sooner than 13 | * actions having the default priority, respectively. The particular semantics 14 | * of this field is up to the server. In particular, every server will have 15 | * their own supported range of priorities, and will decide how these map into 16 | * scheduling policy. 17 | */ 18 | priority?: number; 19 | } 20 | 21 | /** 22 | * An `ExecutionPolicy` can be used to control the scheduling of the action. 23 | */ 24 | export interface ExecutionPolicy__Output { 25 | /** 26 | * The priority (relative importance) of this action. Generally, a lower value 27 | * means that the action should be run sooner than actions having a greater 28 | * priority value, but the interpretation of a given value is server- 29 | * dependent. A priority of 0 means the *default* priority. Priorities may be 30 | * positive or negative, and such actions should run later or sooner than 31 | * actions having the default priority, respectively. The particular semantics 32 | * of this field is up to the server. In particular, every server will have 33 | * their own supported range of priorities, and will decide how these map into 34 | * scheduling policy. 35 | */ 36 | priority: number; 37 | } 38 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/ExecutionStage.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | // Original file: proto/remote_execution.proto 4 | 5 | export enum _build_bazel_remote_execution_v2_ExecutionStage_Value { 6 | /** 7 | * Invalid value. 8 | */ 9 | UNKNOWN = 0, 10 | /** 11 | * Checking the result against the cache. 12 | */ 13 | CACHE_CHECK = 1, 14 | /** 15 | * Currently idle, awaiting a free machine to execute. 16 | */ 17 | QUEUED = 2, 18 | /** 19 | * Currently being executed by a worker. 20 | */ 21 | EXECUTING = 3, 22 | /** 23 | * Finished execution. 24 | */ 25 | COMPLETED = 4, 26 | } 27 | 28 | /** 29 | * The current stage of action execution. 30 | */ 31 | export interface ExecutionStage {} 32 | 33 | /** 34 | * The current stage of action execution. 35 | */ 36 | export interface ExecutionStage__Output {} 37 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/ExecutionTask.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | ExecuteRequest as _build_bazel_remote_execution_v2_ExecuteRequest, 5 | ExecuteRequest__Output as _build_bazel_remote_execution_v2_ExecuteRequest__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/ExecuteRequest'; 7 | import type { 8 | Action as _build_bazel_remote_execution_v2_Action, 9 | Action__Output as _build_bazel_remote_execution_v2_Action__Output, 10 | } from '../../../../../build/bazel/remote/execution/v2/Action'; 11 | import type { 12 | Command as _build_bazel_remote_execution_v2_Command, 13 | Command__Output as _build_bazel_remote_execution_v2_Command__Output, 14 | } from '../../../../../build/bazel/remote/execution/v2/Command'; 15 | import type { 16 | Timestamp as _google_protobuf_Timestamp, 17 | Timestamp__Output as _google_protobuf_Timestamp__Output, 18 | } from '../../../../../google/protobuf/Timestamp'; 19 | 20 | /** 21 | * Next tag: 8 22 | */ 23 | export interface ExecutionTask { 24 | executeRequest?: _build_bazel_remote_execution_v2_ExecuteRequest | null; 25 | jwt?: string; 26 | invocationId?: string; 27 | action?: _build_bazel_remote_execution_v2_Action | null; 28 | command?: _build_bazel_remote_execution_v2_Command | null; 29 | executionId?: string; 30 | queuedTimestamp?: _google_protobuf_Timestamp | null; 31 | } 32 | 33 | /** 34 | * Next tag: 8 35 | */ 36 | export interface ExecutionTask__Output { 37 | executeRequest: _build_bazel_remote_execution_v2_ExecuteRequest__Output | null; 38 | jwt: string; 39 | invocationId: string; 40 | action: _build_bazel_remote_execution_v2_Action__Output | null; 41 | command: _build_bazel_remote_execution_v2_Command__Output | null; 42 | executionId: string; 43 | queuedTimestamp: _google_protobuf_Timestamp__Output | null; 44 | } 45 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/FileNode.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Digest as _build_bazel_remote_execution_v2_Digest, 5 | Digest__Output as _build_bazel_remote_execution_v2_Digest__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Digest'; 7 | import type { 8 | NodeProperty as _build_bazel_remote_execution_v2_NodeProperty, 9 | NodeProperty__Output as _build_bazel_remote_execution_v2_NodeProperty__Output, 10 | } from '../../../../../build/bazel/remote/execution/v2/NodeProperty'; 11 | 12 | /** 13 | * A `FileNode` represents a single file and associated metadata. 14 | */ 15 | export interface FileNode { 16 | /** 17 | * The name of the file. 18 | */ 19 | name?: string; 20 | /** 21 | * The digest of the file's content. 22 | */ 23 | digest?: _build_bazel_remote_execution_v2_Digest | null; 24 | /** 25 | * True if file is executable, false otherwise. 26 | */ 27 | isExecutable?: boolean; 28 | /** 29 | * The node properties of the FileNode. 30 | */ 31 | nodeProperties?: _build_bazel_remote_execution_v2_NodeProperty[]; 32 | } 33 | 34 | /** 35 | * A `FileNode` represents a single file and associated metadata. 36 | */ 37 | export interface FileNode__Output { 38 | /** 39 | * The name of the file. 40 | */ 41 | name: string; 42 | /** 43 | * The digest of the file's content. 44 | */ 45 | digest: _build_bazel_remote_execution_v2_Digest__Output | null; 46 | /** 47 | * True if file is executable, false otherwise. 48 | */ 49 | isExecutable: boolean; 50 | /** 51 | * The node properties of the FileNode. 52 | */ 53 | nodeProperties: _build_bazel_remote_execution_v2_NodeProperty__Output[]; 54 | } 55 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/FindMissingBlobsRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Digest as _build_bazel_remote_execution_v2_Digest, 5 | Digest__Output as _build_bazel_remote_execution_v2_Digest__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Digest'; 7 | 8 | /** 9 | * A request message for 10 | * [ContentAddressableStorage.FindMissingBlobs][build.bazel.remote.execution.v2.ContentAddressableStorage.FindMissingBlobs]. 11 | */ 12 | export interface FindMissingBlobsRequest { 13 | /** 14 | * The instance of the execution system to operate against. A server may 15 | * support multiple instances of the execution system (with their own workers, 16 | * storage, caches, etc.). The server MAY require use of this field to select 17 | * between them in an implementation-defined fashion, otherwise it can be 18 | * omitted. 19 | */ 20 | instanceName?: string; 21 | /** 22 | * A list of the blobs to check. 23 | */ 24 | blobDigests?: _build_bazel_remote_execution_v2_Digest[]; 25 | } 26 | 27 | /** 28 | * A request message for 29 | * [ContentAddressableStorage.FindMissingBlobs][build.bazel.remote.execution.v2.ContentAddressableStorage.FindMissingBlobs]. 30 | */ 31 | export interface FindMissingBlobsRequest__Output { 32 | /** 33 | * The instance of the execution system to operate against. A server may 34 | * support multiple instances of the execution system (with their own workers, 35 | * storage, caches, etc.). The server MAY require use of this field to select 36 | * between them in an implementation-defined fashion, otherwise it can be 37 | * omitted. 38 | */ 39 | instanceName: string; 40 | /** 41 | * A list of the blobs to check. 42 | */ 43 | blobDigests: _build_bazel_remote_execution_v2_Digest__Output[]; 44 | } 45 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/FindMissingBlobsResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Digest as _build_bazel_remote_execution_v2_Digest, 5 | Digest__Output as _build_bazel_remote_execution_v2_Digest__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Digest'; 7 | 8 | /** 9 | * A response message for 10 | * [ContentAddressableStorage.FindMissingBlobs][build.bazel.remote.execution.v2.ContentAddressableStorage.FindMissingBlobs]. 11 | */ 12 | export interface FindMissingBlobsResponse { 13 | /** 14 | * A list of the blobs requested *not* present in the storage. 15 | */ 16 | missingBlobDigests?: _build_bazel_remote_execution_v2_Digest[]; 17 | } 18 | 19 | /** 20 | * A response message for 21 | * [ContentAddressableStorage.FindMissingBlobs][build.bazel.remote.execution.v2.ContentAddressableStorage.FindMissingBlobs]. 22 | */ 23 | export interface FindMissingBlobsResponse__Output { 24 | /** 25 | * A list of the blobs requested *not* present in the storage. 26 | */ 27 | missingBlobDigests: _build_bazel_remote_execution_v2_Digest__Output[]; 28 | } 29 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/GetCapabilitiesRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * A request message for 5 | * [Capabilities.GetCapabilities][build.bazel.remote.execution.v2.Capabilities.GetCapabilities]. 6 | */ 7 | export interface GetCapabilitiesRequest { 8 | /** 9 | * The instance of the execution system to operate against. A server may 10 | * support multiple instances of the execution system (with their own workers, 11 | * storage, caches, etc.). The server MAY require use of this field to select 12 | * between them in an implementation-defined fashion, otherwise it can be 13 | * omitted. 14 | */ 15 | instanceName?: string; 16 | } 17 | 18 | /** 19 | * A request message for 20 | * [Capabilities.GetCapabilities][build.bazel.remote.execution.v2.Capabilities.GetCapabilities]. 21 | */ 22 | export interface GetCapabilitiesRequest__Output { 23 | /** 24 | * The instance of the execution system to operate against. A server may 25 | * support multiple instances of the execution system (with their own workers, 26 | * storage, caches, etc.). The server MAY require use of this field to select 27 | * between them in an implementation-defined fashion, otherwise it can be 28 | * omitted. 29 | */ 30 | instanceName: string; 31 | } 32 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/GetTreeResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Directory as _build_bazel_remote_execution_v2_Directory, 5 | Directory__Output as _build_bazel_remote_execution_v2_Directory__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Directory'; 7 | 8 | /** 9 | * A response message for 10 | * [ContentAddressableStorage.GetTree][build.bazel.remote.execution.v2.ContentAddressableStorage.GetTree]. 11 | */ 12 | export interface GetTreeResponse { 13 | /** 14 | * The directories descended from the requested root. 15 | */ 16 | directories?: _build_bazel_remote_execution_v2_Directory[]; 17 | /** 18 | * If present, signifies that there are more results which the client can 19 | * retrieve by passing this as the page_token in a subsequent 20 | * [request][build.bazel.remote.execution.v2.GetTreeRequest]. 21 | * If empty, signifies that this is the last page of results. 22 | */ 23 | nextPageToken?: string; 24 | } 25 | 26 | /** 27 | * A response message for 28 | * [ContentAddressableStorage.GetTree][build.bazel.remote.execution.v2.ContentAddressableStorage.GetTree]. 29 | */ 30 | export interface GetTreeResponse__Output { 31 | /** 32 | * The directories descended from the requested root. 33 | */ 34 | directories: _build_bazel_remote_execution_v2_Directory__Output[]; 35 | /** 36 | * If present, signifies that there are more results which the client can 37 | * retrieve by passing this as the page_token in a subsequent 38 | * [request][build.bazel.remote.execution.v2.GetTreeRequest]. 39 | * If empty, signifies that this is the last page of results. 40 | */ 41 | nextPageToken: string; 42 | } 43 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/LogFile.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Digest as _build_bazel_remote_execution_v2_Digest, 5 | Digest__Output as _build_bazel_remote_execution_v2_Digest__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Digest'; 7 | 8 | /** 9 | * A `LogFile` is a log stored in the CAS. 10 | */ 11 | export interface LogFile { 12 | /** 13 | * The digest of the log contents. 14 | */ 15 | digest?: _build_bazel_remote_execution_v2_Digest | null; 16 | /** 17 | * This is a hint as to the purpose of the log, and is set to true if the log 18 | * is human-readable text that can be usefully displayed to a user, and false 19 | * otherwise. For instance, if a command-line client wishes to print the 20 | * server logs to the terminal for a failed action, this allows it to avoid 21 | * displaying a binary file. 22 | */ 23 | humanReadable?: boolean; 24 | } 25 | 26 | /** 27 | * A `LogFile` is a log stored in the CAS. 28 | */ 29 | export interface LogFile__Output { 30 | /** 31 | * The digest of the log contents. 32 | */ 33 | digest: _build_bazel_remote_execution_v2_Digest__Output | null; 34 | /** 35 | * This is a hint as to the purpose of the log, and is set to true if the log 36 | * is human-readable text that can be usefully displayed to a user, and false 37 | * otherwise. For instance, if a command-line client wishes to print the 38 | * server logs to the terminal for a failed action, this allows it to avoid 39 | * displaying a binary file. 40 | */ 41 | humanReadable: boolean; 42 | } 43 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/NodeProperty.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * A single property for [FileNodes][build.bazel.remote.execution.v2.FileNode], 5 | * [DirectoryNodes][build.bazel.remote.execution.v2.DirectoryNode], and 6 | * [SymlinkNodes][build.bazel.remote.execution.v2.SymlinkNode]. The server is 7 | * responsible for specifying the property `name`s that it accepts. If 8 | * permitted by the server, the same `name` may occur multiple times. 9 | */ 10 | export interface NodeProperty { 11 | /** 12 | * The property name. 13 | */ 14 | name?: string; 15 | /** 16 | * The property value. 17 | */ 18 | value?: string; 19 | } 20 | 21 | /** 22 | * A single property for [FileNodes][build.bazel.remote.execution.v2.FileNode], 23 | * [DirectoryNodes][build.bazel.remote.execution.v2.DirectoryNode], and 24 | * [SymlinkNodes][build.bazel.remote.execution.v2.SymlinkNode]. The server is 25 | * responsible for specifying the property `name`s that it accepts. If 26 | * permitted by the server, the same `name` may occur multiple times. 27 | */ 28 | export interface NodeProperty__Output { 29 | /** 30 | * The property name. 31 | */ 32 | name: string; 33 | /** 34 | * The property value. 35 | */ 36 | value: string; 37 | } 38 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/PriorityCapabilities.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * Supported range of priorities, including boundaries. 5 | */ 6 | export interface _build_bazel_remote_execution_v2_PriorityCapabilities_PriorityRange { 7 | minPriority?: number; 8 | maxPriority?: number; 9 | } 10 | 11 | /** 12 | * Supported range of priorities, including boundaries. 13 | */ 14 | export interface _build_bazel_remote_execution_v2_PriorityCapabilities_PriorityRange__Output { 15 | minPriority: number; 16 | maxPriority: number; 17 | } 18 | 19 | /** 20 | * Allowed values for priority in 21 | * [ResultsCachePolicy][google.devtools.remoteexecution.v2.ResultsCachePolicy] 22 | * Used for querying both cache and execution valid priority ranges. 23 | */ 24 | export interface PriorityCapabilities { 25 | priorities?: _build_bazel_remote_execution_v2_PriorityCapabilities_PriorityRange[]; 26 | } 27 | 28 | /** 29 | * Allowed values for priority in 30 | * [ResultsCachePolicy][google.devtools.remoteexecution.v2.ResultsCachePolicy] 31 | * Used for querying both cache and execution valid priority ranges. 32 | */ 33 | export interface PriorityCapabilities__Output { 34 | priorities: _build_bazel_remote_execution_v2_PriorityCapabilities_PriorityRange__Output[]; 35 | } 36 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/PublishOperationResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | export interface PublishOperationResponse {} 4 | 5 | export interface PublishOperationResponse__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/ResultsCachePolicy.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * A `ResultsCachePolicy` is used for fine-grained control over how action 5 | * outputs are stored in the CAS and Action Cache. 6 | */ 7 | export interface ResultsCachePolicy { 8 | /** 9 | * The priority (relative importance) of this content in the overall cache. 10 | * Generally, a lower value means a longer retention time or other advantage, 11 | * but the interpretation of a given value is server-dependent. A priority of 12 | * 0 means a *default* value, decided by the server. 13 | * 14 | * The particular semantics of this field is up to the server. In particular, 15 | * every server will have their own supported range of priorities, and will 16 | * decide how these map into retention/eviction policy. 17 | */ 18 | priority?: number; 19 | } 20 | 21 | /** 22 | * A `ResultsCachePolicy` is used for fine-grained control over how action 23 | * outputs are stored in the CAS and Action Cache. 24 | */ 25 | export interface ResultsCachePolicy__Output { 26 | /** 27 | * The priority (relative importance) of this content in the overall cache. 28 | * Generally, a lower value means a longer retention time or other advantage, 29 | * but the interpretation of a given value is server-dependent. A priority of 30 | * 0 means a *default* value, decided by the server. 31 | * 32 | * The particular semantics of this field is up to the server. In particular, 33 | * every server will have their own supported range of priorities, and will 34 | * decide how these map into retention/eviction policy. 35 | */ 36 | priority: number; 37 | } 38 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/SizedDirectory.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Directory as _build_bazel_remote_execution_v2_Directory, 5 | Directory__Output as _build_bazel_remote_execution_v2_Directory__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Directory'; 7 | import type { Long } from '@grpc/proto-loader'; 8 | 9 | export interface SizedDirectory { 10 | directory?: _build_bazel_remote_execution_v2_Directory | null; 11 | sizeBytes?: number | string | Long; 12 | } 13 | 14 | export interface SizedDirectory__Output { 15 | directory: _build_bazel_remote_execution_v2_Directory__Output | null; 16 | sizeBytes: Long; 17 | } 18 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/SymlinkAbsolutePathStrategy.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | // Original file: proto/remote_execution.proto 4 | 5 | export enum _build_bazel_remote_execution_v2_SymlinkAbsolutePathStrategy_Value { 6 | /** 7 | * Invalid value. 8 | */ 9 | UNKNOWN = 0, 10 | /** 11 | * Server will return an `INVALID_ARGUMENT` on input symlinks with absolute 12 | * targets. 13 | * If an action tries to create an output symlink with an absolute target, a 14 | * `FAILED_PRECONDITION` will be returned. 15 | */ 16 | DISALLOWED = 1, 17 | /** 18 | * Server will allow symlink targets to escape the input root tree, possibly 19 | * resulting in non-hermetic builds. 20 | */ 21 | ALLOWED = 2, 22 | } 23 | 24 | /** 25 | * Describes how the server treats absolute symlink targets. 26 | */ 27 | export interface SymlinkAbsolutePathStrategy {} 28 | 29 | /** 30 | * Describes how the server treats absolute symlink targets. 31 | */ 32 | export interface SymlinkAbsolutePathStrategy__Output {} 33 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/ToolDetails.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * Details for the tool used to call the API. 5 | */ 6 | export interface ToolDetails { 7 | /** 8 | * Name of the tool, e.g. bazel. 9 | */ 10 | toolName?: string; 11 | /** 12 | * Version of the tool used for the request, e.g. 5.0.3. 13 | */ 14 | toolVersion?: string; 15 | } 16 | 17 | /** 18 | * Details for the tool used to call the API. 19 | */ 20 | export interface ToolDetails__Output { 21 | /** 22 | * Name of the tool, e.g. bazel. 23 | */ 24 | toolName: string; 25 | /** 26 | * Version of the tool used for the request, e.g. 5.0.3. 27 | */ 28 | toolVersion: string; 29 | } 30 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/Tree.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | Directory as _build_bazel_remote_execution_v2_Directory, 5 | Directory__Output as _build_bazel_remote_execution_v2_Directory__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/Directory'; 7 | 8 | /** 9 | * A `Tree` contains all the 10 | * [Directory][build.bazel.remote.execution.v2.Directory] protos in a 11 | * single directory Merkle tree, compressed into one message. 12 | */ 13 | export interface Tree { 14 | /** 15 | * The root directory in the tree. 16 | */ 17 | root?: _build_bazel_remote_execution_v2_Directory | null; 18 | /** 19 | * All the child directories: the directories referred to by the root and, 20 | * recursively, all its children. In order to reconstruct the directory tree, 21 | * the client must take the digests of each of the child directories and then 22 | * build up a tree starting from the `root`. 23 | */ 24 | children?: _build_bazel_remote_execution_v2_Directory[]; 25 | } 26 | 27 | /** 28 | * A `Tree` contains all the 29 | * [Directory][build.bazel.remote.execution.v2.Directory] protos in a 30 | * single directory Merkle tree, compressed into one message. 31 | */ 32 | export interface Tree__Output { 33 | /** 34 | * The root directory in the tree. 35 | */ 36 | root: _build_bazel_remote_execution_v2_Directory__Output | null; 37 | /** 38 | * All the child directories: the directories referred to by the root and, 39 | * recursively, all its children. In order to reconstruct the directory tree, 40 | * the client must take the digests of each of the child directories and then 41 | * build up a tree starting from the `root`. 42 | */ 43 | children: _build_bazel_remote_execution_v2_Directory__Output[]; 44 | } 45 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/TreeToken.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | import type { 4 | SizedDirectory as _build_bazel_remote_execution_v2_SizedDirectory, 5 | SizedDirectory__Output as _build_bazel_remote_execution_v2_SizedDirectory__Output, 6 | } from '../../../../../build/bazel/remote/execution/v2/SizedDirectory'; 7 | 8 | export interface TreeToken { 9 | sizedDirectories?: _build_bazel_remote_execution_v2_SizedDirectory[]; 10 | } 11 | 12 | export interface TreeToken__Output { 13 | sizedDirectories: _build_bazel_remote_execution_v2_SizedDirectory__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/bazel/remote/execution/v2/WaitExecutionRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/remote_execution.proto 2 | 3 | /** 4 | * A request message for 5 | * [WaitExecution][build.bazel.remote.execution.v2.Execution.WaitExecution]. 6 | */ 7 | export interface WaitExecutionRequest { 8 | /** 9 | * The name of the [Operation][google.longrunning.Operation] 10 | * returned by [Execute][build.bazel.remote.execution.v2.Execution.Execute]. 11 | */ 12 | name?: string; 13 | } 14 | 15 | /** 16 | * A request message for 17 | * [WaitExecution][build.bazel.remote.execution.v2.Execution.WaitExecution]. 18 | */ 19 | export interface WaitExecutionRequest__Output { 20 | /** 21 | * The name of the [Operation][google.longrunning.Operation] 22 | * returned by [Execute][build.bazel.remote.execution.v2.Execution.Execute]. 23 | */ 24 | name: string; 25 | } 26 | -------------------------------------------------------------------------------- /src/proto/build/bazel/semver/SemVer.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/semver.proto 2 | 3 | /** 4 | * The full version of a given tool. 5 | */ 6 | export interface SemVer { 7 | /** 8 | * The major version, e.g 10 for 10.2.3. 9 | */ 10 | major?: number; 11 | /** 12 | * The minor version, e.g. 2 for 10.2.3. 13 | */ 14 | minor?: number; 15 | /** 16 | * The patch version, e.g 3 for 10.2.3. 17 | */ 18 | patch?: number; 19 | /** 20 | * The pre-release version. Either this field or major/minor/patch fields 21 | * must be filled. They are mutually exclusive. Pre-release versions are 22 | * assumed to be earlier than any released versions. 23 | */ 24 | prerelease?: string; 25 | } 26 | 27 | /** 28 | * The full version of a given tool. 29 | */ 30 | export interface SemVer__Output { 31 | /** 32 | * The major version, e.g 10 for 10.2.3. 33 | */ 34 | major: number; 35 | /** 36 | * The minor version, e.g. 2 for 10.2.3. 37 | */ 38 | minor: number; 39 | /** 40 | * The patch version, e.g 3 for 10.2.3. 41 | */ 42 | patch: number; 43 | /** 44 | * The pre-release version. Either this field or major/minor/patch fields 45 | * must be filled. They are mutually exclusive. Pre-release versions are 46 | * assumed to be earlier than any released versions. 47 | */ 48 | prerelease: string; 49 | } 50 | -------------------------------------------------------------------------------- /src/proto/build/stack/auth/v1beta1/LoginRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/auth.proto 2 | 3 | export interface LoginRequest { 4 | /** 5 | * a jwt token 6 | */ 7 | token?: string; 8 | /** 9 | * alternatively, one can use a username & password 10 | */ 11 | username?: string; 12 | password?: string; 13 | /** 14 | * 2nd alternative is to specify only github username; it will trigger oauth 15 | * flow and Login() will return only when completed. 16 | */ 17 | githubUsername?: string; 18 | } 19 | 20 | export interface LoginRequest__Output { 21 | /** 22 | * a jwt token 23 | */ 24 | token: string; 25 | /** 26 | * alternatively, one can use a username & password 27 | */ 28 | username: string; 29 | password: string; 30 | /** 31 | * 2nd alternative is to specify only github username; it will trigger oauth 32 | * flow and Login() will return only when completed. 33 | */ 34 | githubUsername: string; 35 | } 36 | -------------------------------------------------------------------------------- /src/proto/build/stack/auth/v1beta1/LoginResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/auth.proto 2 | 3 | import type { 4 | User as _build_stack_auth_v1beta1_User, 5 | User__Output as _build_stack_auth_v1beta1_User__Output, 6 | } from '../../../../build/stack/auth/v1beta1/User'; 7 | 8 | export interface LoginResponse { 9 | /** 10 | * the user details 11 | */ 12 | user?: _build_stack_auth_v1beta1_User | null; 13 | /** 14 | * a jwt token that can be used for subsequent auth 15 | */ 16 | token?: string; 17 | } 18 | 19 | export interface LoginResponse__Output { 20 | /** 21 | * the user details 22 | */ 23 | user: _build_stack_auth_v1beta1_User__Output | null; 24 | /** 25 | * a jwt token that can be used for subsequent auth 26 | */ 27 | token: string; 28 | } 29 | -------------------------------------------------------------------------------- /src/proto/build/stack/auth/v1beta1/PasswordResetRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/auth.proto 2 | 3 | export interface PasswordResetRequest { 4 | email?: string; 5 | } 6 | 7 | export interface PasswordResetRequest__Output { 8 | email: string; 9 | } 10 | -------------------------------------------------------------------------------- /src/proto/build/stack/auth/v1beta1/PasswordResetResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/auth.proto 2 | 3 | export interface PasswordResetResponse {} 4 | 5 | export interface PasswordResetResponse__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/stack/auth/v1beta1/RegisterRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/auth.proto 2 | 3 | export interface RegisterRequest { 4 | name?: string; 5 | email?: string; 6 | password?: string; 7 | sendConfirmationEmail?: boolean; 8 | } 9 | 10 | export interface RegisterRequest__Output { 11 | name: string; 12 | email: string; 13 | password: string; 14 | sendConfirmationEmail: boolean; 15 | } 16 | -------------------------------------------------------------------------------- /src/proto/build/stack/auth/v1beta1/User.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/auth.proto 2 | 3 | export interface User { 4 | handle?: string; 5 | domain?: string; 6 | login?: string; 7 | name?: string; 8 | avatarUrl?: string; 9 | splashUrl?: string; 10 | email?: string; 11 | isOrg?: boolean; 12 | /** 13 | * if the email of the user has been not been confirmed yet. 14 | */ 15 | isUnconfirmed?: boolean; 16 | } 17 | 18 | export interface User__Output { 19 | handle: string; 20 | domain: string; 21 | login: string; 22 | name: string; 23 | avatarUrl: string; 24 | splashUrl: string; 25 | email: string; 26 | isOrg: boolean; 27 | /** 28 | * if the email of the user has been not been confirmed yet. 29 | */ 30 | isUnconfirmed: boolean; 31 | } 32 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/CancelRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | 8 | export interface CancelRequest { 9 | workspace?: _build_stack_bezel_v1beta1_Workspace | null; 10 | commandId?: string; 11 | } 12 | 13 | export interface CancelRequest__Output { 14 | workspace: _build_stack_bezel_v1beta1_Workspace__Output | null; 15 | commandId: string; 16 | } 17 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/CancelResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface CancelResponse {} 4 | 5 | export interface CancelResponse__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/DeleteCommandHistoryRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface DeleteCommandHistoryRequest { 4 | /** 5 | * The id of the entry to delete 6 | */ 7 | id?: string; 8 | } 9 | 10 | export interface DeleteCommandHistoryRequest__Output { 11 | /** 12 | * The id of the entry to delete 13 | */ 14 | id: string; 15 | } 16 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/DeleteCommandHistoryResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface DeleteCommandHistoryResponse {} 4 | 5 | export interface DeleteCommandHistoryResponse__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/EnvironmentVariable.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface EnvironmentVariable { 4 | Name?: string; 5 | value?: string; 6 | } 7 | 8 | export interface EnvironmentVariable__Output { 9 | Name: string; 10 | value: string; 11 | } 12 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ExecRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | EnvironmentVariable as _build_stack_bezel_v1beta1_EnvironmentVariable, 5 | EnvironmentVariable__Output as _build_stack_bezel_v1beta1_EnvironmentVariable__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/EnvironmentVariable'; 7 | 8 | /** 9 | * Mirrors the command_server ExecRequest but uses strings instead of bytes. 10 | * Hopefully that's not too big a deal. 11 | */ 12 | export interface ExecRequest { 13 | workingDirectory?: string; 14 | argv?: string[]; 15 | environmentVariable?: _build_stack_bezel_v1beta1_EnvironmentVariable[]; 16 | } 17 | 18 | /** 19 | * Mirrors the command_server ExecRequest but uses strings instead of bytes. 20 | * Hopefully that's not too big a deal. 21 | */ 22 | export interface ExecRequest__Output { 23 | workingDirectory: string; 24 | argv: string[]; 25 | environmentVariable: _build_stack_bezel_v1beta1_EnvironmentVariable__Output[]; 26 | } 27 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ExecResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { Long } from '@grpc/proto-loader'; 4 | 5 | export interface ExecResponse { 6 | /** 7 | * The pid of the process 8 | */ 9 | pid?: number | string | Long; 10 | standardOutput?: Buffer | Uint8Array | string; 11 | standardError?: Buffer | Uint8Array | string; 12 | /** 13 | * Exit code of the run process 14 | */ 15 | exitCode?: number; 16 | /** 17 | * True if the command has finished, generally comes from the command_server 18 | * RunResponse. 19 | */ 20 | finished?: boolean; 21 | } 22 | 23 | export interface ExecResponse__Output { 24 | /** 25 | * The pid of the process 26 | */ 27 | pid: Long; 28 | standardOutput: Buffer; 29 | standardError: Buffer; 30 | /** 31 | * Exit code of the run process 32 | */ 33 | exitCode: number; 34 | /** 35 | * True if the command has finished, generally comes from the command_server 36 | * RunResponse. 37 | */ 38 | finished: boolean; 39 | } 40 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ExternalListWorkspacesRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | 8 | export interface ExternalListWorkspacesRequest { 9 | workspace?: _build_stack_bezel_v1beta1_Workspace | null; 10 | } 11 | 12 | export interface ExternalListWorkspacesRequest__Output { 13 | workspace: _build_stack_bezel_v1beta1_Workspace__Output | null; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ExternalListWorkspacesResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | ExternalWorkspace as _build_stack_bezel_v1beta1_ExternalWorkspace, 5 | ExternalWorkspace__Output as _build_stack_bezel_v1beta1_ExternalWorkspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/ExternalWorkspace'; 7 | 8 | export interface ExternalListWorkspacesResponse { 9 | workspace?: _build_stack_bezel_v1beta1_ExternalWorkspace[]; 10 | } 11 | 12 | export interface ExternalListWorkspacesResponse__Output { 13 | workspace: _build_stack_bezel_v1beta1_ExternalWorkspace__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/FileDownloadRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | import type { FileKind as _build_stack_bezel_v1beta1_FileKind } from '../../../../build/stack/bezel/v1beta1/FileKind'; 8 | 9 | export interface FileDownloadRequest { 10 | workspace?: _build_stack_bezel_v1beta1_Workspace | null; 11 | /** 12 | * The kind of the file 13 | */ 14 | kind?: _build_stack_bezel_v1beta1_FileKind | keyof typeof _build_stack_bezel_v1beta1_FileKind; 15 | /** 16 | * Bazel label to retrieve 17 | */ 18 | label?: string; 19 | } 20 | 21 | export interface FileDownloadRequest__Output { 22 | workspace: _build_stack_bezel_v1beta1_Workspace__Output | null; 23 | /** 24 | * The kind of the file 25 | */ 26 | kind: _build_stack_bezel_v1beta1_FileKind; 27 | /** 28 | * Bazel label to retrieve 29 | */ 30 | label: string; 31 | } 32 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/FileDownloadResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Timestamp as _google_protobuf_Timestamp, 5 | Timestamp__Output as _google_protobuf_Timestamp__Output, 6 | } from '../../../../google/protobuf/Timestamp'; 7 | import type { Long } from '@grpc/proto-loader'; 8 | 9 | export interface FileDownloadResponse { 10 | /** 11 | * URL where the file can be downloaded 12 | */ 13 | uri?: string; 14 | /** 15 | * The SHA256 of the artifact 16 | */ 17 | sha256?: string; 18 | /** 19 | * The file size 20 | */ 21 | size?: number | string | Long; 22 | /** 23 | * The file mode 24 | */ 25 | mode?: number; 26 | /** 27 | * The file modification time 28 | */ 29 | modifiedTime?: _google_protobuf_Timestamp | null; 30 | } 31 | 32 | export interface FileDownloadResponse__Output { 33 | /** 34 | * URL where the file can be downloaded 35 | */ 36 | uri: string; 37 | /** 38 | * The SHA256 of the artifact 39 | */ 40 | sha256: string; 41 | /** 42 | * The file size 43 | */ 44 | size: Long; 45 | /** 46 | * The file mode 47 | */ 48 | mode: number; 49 | /** 50 | * The file modification time 51 | */ 52 | modifiedTime: _google_protobuf_Timestamp__Output | null; 53 | } 54 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/FileKind.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | /** 4 | * Describes various kinds of files used in requests 5 | */ 6 | export enum FileKind { 7 | KIND_UNKNOWN = 0, 8 | /** 9 | * a source file 10 | */ 11 | SOURCE = 1, 12 | /** 13 | * a generated file 14 | */ 15 | GENERATED = 2, 16 | /** 17 | * an output file, generally in CWD and starts with bazel-out/... 18 | */ 19 | OUTPUT = 3, 20 | /** 21 | * a file rooted in the output_base tree 22 | */ 23 | OUTPUT_BASE = 4, 24 | /** 25 | * a file rooted in the execroot tree 26 | */ 27 | EXECROOT = 5, 28 | /** 29 | * an external source file 30 | */ 31 | EXTERNAL = 6, 32 | } 33 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/GetMetadataRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface GetMetadataRequest {} 4 | 5 | export interface GetMetadataRequest__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/GetWorkspaceRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface GetWorkspaceRequest { 4 | /** 5 | * The filesystem path where the workspace exists 6 | */ 7 | cwd?: string; 8 | /** 9 | * Alternatively, the output_base. Must specify at least one of these. 10 | */ 11 | outputBase?: string; 12 | } 13 | 14 | export interface GetWorkspaceRequest__Output { 15 | /** 16 | * The filesystem path where the workspace exists 17 | */ 18 | cwd: string; 19 | /** 20 | * Alternatively, the output_base. Must specify at least one of these. 21 | */ 22 | outputBase: string; 23 | } 24 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/Info.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface Info { 4 | key?: string; 5 | value?: string; 6 | description?: string; 7 | } 8 | 9 | export interface Info__Output { 10 | key: string; 11 | value: string; 12 | description: string; 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/InfoRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | 8 | export interface InfoRequest { 9 | workspace?: _build_stack_bezel_v1beta1_Workspace | null; 10 | } 11 | 12 | export interface InfoRequest__Output { 13 | workspace: _build_stack_bezel_v1beta1_Workspace__Output | null; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/InfoResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Info as _build_stack_bezel_v1beta1_Info, 5 | Info__Output as _build_stack_bezel_v1beta1_Info__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Info'; 7 | 8 | export interface InfoResponse { 9 | info?: _build_stack_bezel_v1beta1_Info[]; 10 | } 11 | 12 | export interface InfoResponse__Output { 13 | info: _build_stack_bezel_v1beta1_Info__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/LabelKind.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | // Original file: proto/bzl.proto 4 | 5 | export enum _build_stack_bezel_v1beta1_LabelKind_Type { 6 | UNKNOWN_TYPE = 0, 7 | RULE = 1, 8 | SOURCE_FILE = 2, 9 | GENERATED_FILE = 3, 10 | } 11 | 12 | export interface LabelKind { 13 | type?: 14 | | _build_stack_bezel_v1beta1_LabelKind_Type 15 | | keyof typeof _build_stack_bezel_v1beta1_LabelKind_Type; 16 | kind?: string; 17 | label?: string; 18 | location?: string; 19 | } 20 | 21 | export interface LabelKind__Output { 22 | type: _build_stack_bezel_v1beta1_LabelKind_Type; 23 | kind: string; 24 | label: string; 25 | location: string; 26 | } 27 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListCommandHistoryRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface ListCommandHistoryRequest { 4 | /** 5 | * Optionally filter by workspace directory 6 | */ 7 | cwd?: string; 8 | } 9 | 10 | export interface ListCommandHistoryRequest__Output { 11 | /** 12 | * Optionally filter by workspace directory 13 | */ 14 | cwd: string; 15 | } 16 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListCommandHistoryResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | CommandHistory as _build_stack_bezel_v1beta1_CommandHistory, 5 | CommandHistory__Output as _build_stack_bezel_v1beta1_CommandHistory__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/CommandHistory'; 7 | 8 | export interface ListCommandHistoryResponse { 9 | history?: _build_stack_bezel_v1beta1_CommandHistory[]; 10 | } 11 | 12 | export interface ListCommandHistoryResponse__Output { 13 | history: _build_stack_bezel_v1beta1_CommandHistory__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListPackagesRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | import type { 8 | ExternalWorkspace as _build_stack_bezel_v1beta1_ExternalWorkspace, 9 | ExternalWorkspace__Output as _build_stack_bezel_v1beta1_ExternalWorkspace__Output, 10 | } from '../../../../build/stack/bezel/v1beta1/ExternalWorkspace'; 11 | 12 | export interface ListPackagesRequest { 13 | workspace?: _build_stack_bezel_v1beta1_Workspace | null; 14 | externalWorkspace?: _build_stack_bezel_v1beta1_ExternalWorkspace | null; 15 | } 16 | 17 | export interface ListPackagesRequest__Output { 18 | workspace: _build_stack_bezel_v1beta1_Workspace__Output | null; 19 | externalWorkspace: _build_stack_bezel_v1beta1_ExternalWorkspace__Output | null; 20 | } 21 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListPackagesResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Package as _build_stack_bezel_v1beta1_Package, 5 | Package__Output as _build_stack_bezel_v1beta1_Package__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Package'; 7 | 8 | export interface ListPackagesResponse { 9 | /** 10 | * Returns a List of packages 11 | */ 12 | package?: _build_stack_bezel_v1beta1_Package[]; 13 | } 14 | 15 | export interface ListPackagesResponse__Output { 16 | /** 17 | * Returns a List of packages 18 | */ 19 | package: _build_stack_bezel_v1beta1_Package__Output[]; 20 | } 21 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListRulesRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | import type { 8 | ExternalWorkspace as _build_stack_bezel_v1beta1_ExternalWorkspace, 9 | ExternalWorkspace__Output as _build_stack_bezel_v1beta1_ExternalWorkspace__Output, 10 | } from '../../../../build/stack/bezel/v1beta1/ExternalWorkspace'; 11 | import type { 12 | Package as _build_stack_bezel_v1beta1_Package, 13 | Package__Output as _build_stack_bezel_v1beta1_Package__Output, 14 | } from '../../../../build/stack/bezel/v1beta1/Package'; 15 | 16 | export interface ListRulesRequest { 17 | /** 18 | * Mandatory workspace to target 19 | */ 20 | workspace?: _build_stack_bezel_v1beta1_Workspace | null; 21 | /** 22 | * Optional external workspace to constrain 23 | */ 24 | externalWorkspace?: _build_stack_bezel_v1beta1_ExternalWorkspace | null; 25 | /** 26 | * Optional package to constrain 27 | */ 28 | package?: _build_stack_bezel_v1beta1_Package | null; 29 | /** 30 | * If the request should be recursive 31 | */ 32 | recursive?: boolean; 33 | } 34 | 35 | export interface ListRulesRequest__Output { 36 | /** 37 | * Mandatory workspace to target 38 | */ 39 | workspace: _build_stack_bezel_v1beta1_Workspace__Output | null; 40 | /** 41 | * Optional external workspace to constrain 42 | */ 43 | externalWorkspace: _build_stack_bezel_v1beta1_ExternalWorkspace__Output | null; 44 | /** 45 | * Optional package to constrain 46 | */ 47 | package: _build_stack_bezel_v1beta1_Package__Output | null; 48 | /** 49 | * If the request should be recursive 50 | */ 51 | recursive: boolean; 52 | } 53 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListRulesResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | LabelKind as _build_stack_bezel_v1beta1_LabelKind, 5 | LabelKind__Output as _build_stack_bezel_v1beta1_LabelKind__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/LabelKind'; 7 | 8 | export interface ListRulesResponse { 9 | /** 10 | * Returns a List of Rules, with no subtrees created 11 | */ 12 | rule?: _build_stack_bezel_v1beta1_LabelKind[]; 13 | } 14 | 15 | export interface ListRulesResponse__Output { 16 | /** 17 | * Returns a List of Rules, with no subtrees created 18 | */ 19 | rule: _build_stack_bezel_v1beta1_LabelKind__Output[]; 20 | } 21 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListWorkspacesRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | /** 4 | * ListWorkspacesRequest is consumed by the WorkspaceService.List rpc. 5 | */ 6 | export interface ListWorkspacesRequest { 7 | /** 8 | * the server may cache the discovered workspaces. This option forces it 9 | * not to use the cache. 10 | */ 11 | refresh?: boolean; 12 | } 13 | 14 | /** 15 | * ListWorkspacesRequest is consumed by the WorkspaceService.List rpc. 16 | */ 17 | export interface ListWorkspacesRequest__Output { 18 | /** 19 | * the server may cache the discovered workspaces. This option forces it 20 | * not to use the cache. 21 | */ 22 | refresh: boolean; 23 | } 24 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ListWorkspacesResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | 8 | /** 9 | * ListWorkspacesResponse is produced by the WorkspaceService.List rpc. 10 | */ 11 | export interface ListWorkspacesResponse { 12 | /** 13 | * ListWorkspacesResponse is produced by the WorkspaceService.List rpc. 14 | */ 15 | workspace?: _build_stack_bezel_v1beta1_Workspace[]; 16 | } 17 | 18 | /** 19 | * ListWorkspacesResponse is produced by the WorkspaceService.List rpc. 20 | */ 21 | export interface ListWorkspacesResponse__Output { 22 | /** 23 | * ListWorkspacesResponse is produced by the WorkspaceService.List rpc. 24 | */ 25 | workspace: _build_stack_bezel_v1beta1_Workspace__Output[]; 26 | } 27 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/Package.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface Package { 4 | /** 5 | * The name of the package (similar to a dir basename) 6 | */ 7 | name?: string; 8 | /** 9 | * The dir path 10 | */ 11 | dir?: string; 12 | } 13 | 14 | export interface Package__Output { 15 | /** 16 | * The name of the package (similar to a dir basename) 17 | */ 18 | name: string; 19 | /** 20 | * The dir path 21 | */ 22 | dir: string; 23 | } 24 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/RunRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | import type { 4 | Workspace as _build_stack_bezel_v1beta1_Workspace, 5 | Workspace__Output as _build_stack_bezel_v1beta1_Workspace__Output, 6 | } from '../../../../build/stack/bezel/v1beta1/Workspace'; 7 | 8 | export interface RunRequest { 9 | workspace?: _build_stack_bezel_v1beta1_Workspace | null; 10 | /** 11 | * Additional arguments/options for the command. 12 | */ 13 | arg?: string[]; 14 | /** 15 | * If true, include action events 16 | */ 17 | actionEvents?: boolean; 18 | /** 19 | * Optional environment variables of the form KEY=VAL 20 | */ 21 | env?: string[]; 22 | } 23 | 24 | export interface RunRequest__Output { 25 | workspace: _build_stack_bezel_v1beta1_Workspace__Output | null; 26 | /** 27 | * Additional arguments/options for the command. 28 | */ 29 | arg: string[]; 30 | /** 31 | * If true, include action events 32 | */ 33 | actionEvents: boolean; 34 | /** 35 | * Optional environment variables of the form KEY=VAL 36 | */ 37 | env: string[]; 38 | } 39 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ShutdownRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface ShutdownRequest { 4 | restart?: boolean; 5 | } 6 | 7 | export interface ShutdownRequest__Output { 8 | restart: boolean; 9 | } 10 | -------------------------------------------------------------------------------- /src/proto/build/stack/bezel/v1beta1/ShutdownResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/bzl.proto 2 | 3 | export interface ShutdownResponse {} 4 | 5 | export interface ShutdownResponse__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/CreateScopeRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | BazelQuery as _build_stack_codesearch_v1beta1_BazelQuery, 5 | BazelQuery__Output as _build_stack_codesearch_v1beta1_BazelQuery__Output, 6 | } from '../../../../build/stack/codesearch/v1beta1/BazelQuery'; 7 | 8 | export interface CreateScopeRequest { 9 | cwd?: string; 10 | outputBase?: string; 11 | name?: string; 12 | force?: boolean; 13 | /** 14 | * The contents of the file, if they are guaranteed to be short. 15 | */ 16 | bazelQuery?: _build_stack_codesearch_v1beta1_BazelQuery | null; 17 | /** 18 | * PID of the workspace bazel server, if known 19 | */ 20 | pid?: number; 21 | expression?: 'bazelQuery'; 22 | } 23 | 24 | export interface CreateScopeRequest__Output { 25 | cwd: string; 26 | outputBase: string; 27 | name: string; 28 | force: boolean; 29 | /** 30 | * The contents of the file, if they are guaranteed to be short. 31 | */ 32 | bazelQuery?: _build_stack_codesearch_v1beta1_BazelQuery__Output | null; 33 | /** 34 | * PID of the workspace bazel server, if known 35 | */ 36 | pid: number; 37 | expression: 'bazelQuery'; 38 | } 39 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/CreateScopeResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | export interface CreateScopeResponse { 4 | progress?: string[]; 5 | } 6 | 7 | export interface CreateScopeResponse__Output { 8 | progress: string[]; 9 | } 10 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/GetScopeRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | export interface GetScopeRequest { 4 | cwd?: string; 5 | outputBase?: string; 6 | name?: string; 7 | } 8 | 9 | export interface GetScopeRequest__Output { 10 | cwd: string; 11 | outputBase: string; 12 | name: string; 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/LineBlock.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | LineBounds as _build_stack_codesearch_v1beta1_LineBounds, 5 | LineBounds__Output as _build_stack_codesearch_v1beta1_LineBounds__Output, 6 | } from '../../../../build/stack/codesearch/v1beta1/LineBounds'; 7 | 8 | /** 9 | * A block is a contiguous set of lines. 10 | */ 11 | export interface LineBlock { 12 | /** 13 | * A block is a contiguous set of lines. 14 | */ 15 | lines?: _build_stack_codesearch_v1beta1_LineBounds[]; 16 | } 17 | 18 | /** 19 | * A block is a contiguous set of lines. 20 | */ 21 | export interface LineBlock__Output { 22 | /** 23 | * A block is a contiguous set of lines. 24 | */ 25 | lines: _build_stack_codesearch_v1beta1_LineBounds__Output[]; 26 | } 27 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/LineBounds.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | Bounds as _livegrep_Bounds, 5 | Bounds__Output as _livegrep_Bounds__Output, 6 | } from '../../../../livegrep/Bounds'; 7 | import type { Long } from '@grpc/proto-loader'; 8 | 9 | /** 10 | * the set of context lines and matched lines. The line numbers should be 11 | * sorted prior to display. If a LineBound has no Bounds ranges, it is a 12 | * contextual line. 13 | */ 14 | export interface LineBounds { 15 | /** 16 | * the line number that this line represents 17 | */ 18 | lineNumber?: number | string | Long; 19 | /** 20 | * the content of the line 21 | */ 22 | line?: string; 23 | /** 24 | * optional set of bounding ranges for the line. The server should not 25 | * provide overlapping ranges. 26 | */ 27 | bounds?: _livegrep_Bounds[]; 28 | } 29 | 30 | /** 31 | * the set of context lines and matched lines. The line numbers should be 32 | * sorted prior to display. If a LineBound has no Bounds ranges, it is a 33 | * contextual line. 34 | */ 35 | export interface LineBounds__Output { 36 | /** 37 | * the line number that this line represents 38 | */ 39 | lineNumber: Long; 40 | /** 41 | * the content of the line 42 | */ 43 | line: string; 44 | /** 45 | * optional set of bounding ranges for the line. The server should not 46 | * provide overlapping ranges. 47 | */ 48 | bounds: _livegrep_Bounds__Output[]; 49 | } 50 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/ListScopesRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | export interface ListScopesRequest { 4 | /** 5 | * The repository output_base 6 | */ 7 | outputBase?: string; 8 | } 9 | 10 | export interface ListScopesRequest__Output { 11 | /** 12 | * The repository output_base 13 | */ 14 | outputBase: string; 15 | } 16 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/ListScopesResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | Scope as _build_stack_codesearch_v1beta1_Scope, 5 | Scope__Output as _build_stack_codesearch_v1beta1_Scope__Output, 6 | } from '../../../../build/stack/codesearch/v1beta1/Scope'; 7 | 8 | export interface ListScopesResponse { 9 | scope?: _build_stack_codesearch_v1beta1_Scope[]; 10 | defaultScopeName?: string; 11 | } 12 | 13 | export interface ListScopesResponse__Output { 14 | scope: _build_stack_codesearch_v1beta1_Scope__Output[]; 15 | defaultScopeName: string; 16 | } 17 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/MergedCodeSearchResult.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | SearchStats as _livegrep_SearchStats, 5 | SearchStats__Output as _livegrep_SearchStats__Output, 6 | } from '../../../../livegrep/SearchStats'; 7 | import type { 8 | MergedSearchResult as _build_stack_codesearch_v1beta1_MergedSearchResult, 9 | MergedSearchResult__Output as _build_stack_codesearch_v1beta1_MergedSearchResult__Output, 10 | } from '../../../../build/stack/codesearch/v1beta1/MergedSearchResult'; 11 | import type { 12 | FileResult as _livegrep_FileResult, 13 | FileResult__Output as _livegrep_FileResult__Output, 14 | } from '../../../../livegrep/FileResult'; 15 | import type { Long } from '@grpc/proto-loader'; 16 | 17 | export interface MergedCodeSearchResult { 18 | stats?: _livegrep_SearchStats | null; 19 | results?: _build_stack_codesearch_v1beta1_MergedSearchResult[]; 20 | fileResults?: _livegrep_FileResult[]; 21 | /** 22 | * unique index identity that served this request 23 | */ 24 | indexName?: string; 25 | indexTime?: number | string | Long; 26 | /** 27 | * the total number of results, before merge 28 | */ 29 | totalResults?: number | string | Long; 30 | } 31 | 32 | export interface MergedCodeSearchResult__Output { 33 | stats: _livegrep_SearchStats__Output | null; 34 | results: _build_stack_codesearch_v1beta1_MergedSearchResult__Output[]; 35 | fileResults: _livegrep_FileResult__Output[]; 36 | /** 37 | * unique index identity that served this request 38 | */ 39 | indexName: string; 40 | indexTime: Long; 41 | /** 42 | * the total number of results, before merge 43 | */ 44 | totalResults: Long; 45 | } 46 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/MergedSearchResult.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | LineBlock as _build_stack_codesearch_v1beta1_LineBlock, 5 | LineBlock__Output as _build_stack_codesearch_v1beta1_LineBlock__Output, 6 | } from '../../../../build/stack/codesearch/v1beta1/LineBlock'; 7 | 8 | /** 9 | * MergedSearchResult is the union of multiple SearchResult items for the same 10 | * file path. The set of lines to be displayed is captured by the lines map, 11 | * whereas the line matches are represented by the bounds. 12 | */ 13 | export interface MergedSearchResult { 14 | tree?: string; 15 | version?: string; 16 | path?: string; 17 | block?: _build_stack_codesearch_v1beta1_LineBlock[]; 18 | /** 19 | * string for the external link 20 | */ 21 | externalUrl?: string; 22 | } 23 | 24 | /** 25 | * MergedSearchResult is the union of multiple SearchResult items for the same 26 | * file path. The set of lines to be displayed is captured by the lines map, 27 | * whereas the line matches are represented by the bounds. 28 | */ 29 | export interface MergedSearchResult__Output { 30 | tree: string; 31 | version: string; 32 | path: string; 33 | block: _build_stack_codesearch_v1beta1_LineBlock__Output[]; 34 | /** 35 | * string for the external link 36 | */ 37 | externalUrl: string; 38 | } 39 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/Scope.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | Timestamp as _google_protobuf_Timestamp, 5 | Timestamp__Output as _google_protobuf_Timestamp__Output, 6 | } from '../../../../google/protobuf/Timestamp'; 7 | import type { 8 | ServerInfo as _livegrep_ServerInfo, 9 | ServerInfo__Output as _livegrep_ServerInfo__Output, 10 | } from '../../../../livegrep/ServerInfo'; 11 | import type { Long } from '@grpc/proto-loader'; 12 | 13 | /** 14 | * A scope is a definition of a set of files 15 | */ 16 | export interface Scope { 17 | /** 18 | * a name to uniquely identify this set of files 19 | */ 20 | name?: string; 21 | /** 22 | * a URI that defines the set of files to be used for the search. 23 | */ 24 | uri?: string; 25 | /** 26 | * the number of files in the scope 27 | */ 28 | size?: number | string | Long; 29 | /** 30 | * a timestamp to indicate when this was last indexed 31 | */ 32 | createdAt?: _google_protobuf_Timestamp | null; 33 | /** 34 | * The ServerInfo for this scope 35 | */ 36 | info?: _livegrep_ServerInfo | null; 37 | } 38 | 39 | /** 40 | * A scope is a definition of a set of files 41 | */ 42 | export interface Scope__Output { 43 | /** 44 | * a name to uniquely identify this set of files 45 | */ 46 | name: string; 47 | /** 48 | * a URI that defines the set of files to be used for the search. 49 | */ 50 | uri: string; 51 | /** 52 | * the number of files in the scope 53 | */ 54 | size: Long; 55 | /** 56 | * a timestamp to indicate when this was last indexed 57 | */ 58 | createdAt: _google_protobuf_Timestamp__Output | null; 59 | /** 60 | * The ServerInfo for this scope 61 | */ 62 | info: _livegrep_ServerInfo__Output | null; 63 | } 64 | -------------------------------------------------------------------------------- /src/proto/build/stack/codesearch/v1beta1/ScopedQuery.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/codesearch.proto 2 | 3 | import type { 4 | Query as _livegrep_Query, 5 | Query__Output as _livegrep_Query__Output, 6 | } from '../../../../livegrep/Query'; 7 | 8 | export interface ScopedQuery { 9 | /** 10 | * the name of the scope to search within 11 | */ 12 | scopeName?: string; 13 | /** 14 | * the search query 15 | */ 16 | query?: _livegrep_Query | null; 17 | } 18 | 19 | export interface ScopedQuery__Output { 20 | /** 21 | * the name of the scope to search within 22 | */ 23 | scopeName: string; 24 | /** 25 | * the search query 26 | */ 27 | query: _livegrep_Query__Output | null; 28 | } 29 | -------------------------------------------------------------------------------- /src/proto/build/stack/license/v1beta1/RenewLicenseRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/license.proto 2 | 3 | export interface RenewLicenseRequest { 4 | /** 5 | * the existing JWT token that encodes the user identity and current 6 | * subscription metadata. 7 | */ 8 | currentToken?: string; 9 | } 10 | 11 | export interface RenewLicenseRequest__Output { 12 | /** 13 | * the existing JWT token that encodes the user identity and current 14 | * subscription metadata. 15 | */ 16 | currentToken: string; 17 | } 18 | -------------------------------------------------------------------------------- /src/proto/build/stack/license/v1beta1/RenewLicenseResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/license.proto 2 | 3 | import type { 4 | License as _build_stack_license_v1beta1_License, 5 | License__Output as _build_stack_license_v1beta1_License__Output, 6 | } from '../../../../build/stack/license/v1beta1/License'; 7 | 8 | export interface RenewLicenseResponse { 9 | /** 10 | * a JWT token that encodes the user identity and new license metadata. 11 | */ 12 | newToken?: string; 13 | license?: _build_stack_license_v1beta1_License | null; 14 | } 15 | 16 | export interface RenewLicenseResponse__Output { 17 | /** 18 | * a JWT token that encodes the user identity and new license metadata. 19 | */ 20 | newToken: string; 21 | license: _build_stack_license_v1beta1_License__Output | null; 22 | } 23 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/CancelSubscriptionRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | /** 4 | * Username is implied in the auth headers 5 | */ 6 | export interface CancelSubscriptionRequest { 7 | /** 8 | * the id the sub to cancel 9 | */ 10 | id?: string; 11 | } 12 | 13 | /** 14 | * Username is implied in the auth headers 15 | */ 16 | export interface CancelSubscriptionRequest__Output { 17 | /** 18 | * the id the sub to cancel 19 | */ 20 | id: string; 21 | } 22 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/CancelSubscriptionResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | import type { 4 | Subscription as _build_stack_nucleate_v1beta_Subscription, 5 | Subscription__Output as _build_stack_nucleate_v1beta_Subscription__Output, 6 | } from '../../../../build/stack/nucleate/v1beta/Subscription'; 7 | 8 | export interface CancelSubscriptionResponse { 9 | subscription?: _build_stack_nucleate_v1beta_Subscription | null; 10 | } 11 | 12 | export interface CancelSubscriptionResponse__Output { 13 | subscription: _build_stack_nucleate_v1beta_Subscription__Output | null; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/CreateSubscriptionRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | import type { 4 | PaymentSource as _build_stack_nucleate_v1beta_PaymentSource, 5 | PaymentSource__Output as _build_stack_nucleate_v1beta_PaymentSource__Output, 6 | } from '../../../../build/stack/nucleate/v1beta/PaymentSource'; 7 | 8 | /** 9 | * Username is implied in the auth headers 10 | */ 11 | export interface CreateSubscriptionRequest { 12 | /** 13 | * The stripe payment source token that was generated in the frontend 14 | */ 15 | tokenId?: string; 16 | /** 17 | * the plan that the user is subscribing to 18 | */ 19 | planId?: string; 20 | /** 21 | * if the card params are being explicitly specified 22 | */ 23 | paymentSource?: _build_stack_nucleate_v1beta_PaymentSource | null; 24 | } 25 | 26 | /** 27 | * Username is implied in the auth headers 28 | */ 29 | export interface CreateSubscriptionRequest__Output { 30 | /** 31 | * The stripe payment source token that was generated in the frontend 32 | */ 33 | tokenId: string; 34 | /** 35 | * the plan that the user is subscribing to 36 | */ 37 | planId: string; 38 | /** 39 | * if the card params are being explicitly specified 40 | */ 41 | paymentSource: _build_stack_nucleate_v1beta_PaymentSource__Output | null; 42 | } 43 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/Customer.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | import type { 4 | Subscription as _build_stack_nucleate_v1beta_Subscription, 5 | Subscription__Output as _build_stack_nucleate_v1beta_Subscription__Output, 6 | } from '../../../../build/stack/nucleate/v1beta/Subscription'; 7 | 8 | export interface Customer { 9 | id?: string; 10 | email?: string; 11 | subscription?: _build_stack_nucleate_v1beta_Subscription[]; 12 | } 13 | 14 | export interface Customer__Output { 15 | id: string; 16 | email: string; 17 | subscription: _build_stack_nucleate_v1beta_Subscription__Output[]; 18 | } 19 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/GetCustomerRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | /** 4 | * Username is implied in the auth headers 5 | */ 6 | export interface GetCustomerRequest { 7 | emailAddress?: string; 8 | } 9 | 10 | /** 11 | * Username is implied in the auth headers 12 | */ 13 | export interface GetCustomerRequest__Output { 14 | emailAddress: string; 15 | } 16 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/ListPlansRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | export interface ListPlansRequest {} 4 | 5 | export interface ListPlansRequest__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/ListPlansResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | import type { 4 | Plan as _build_stack_nucleate_v1beta_Plan, 5 | Plan__Output as _build_stack_nucleate_v1beta_Plan__Output, 6 | } from '../../../../build/stack/nucleate/v1beta/Plan'; 7 | 8 | export interface ListPlansResponse { 9 | plan?: _build_stack_nucleate_v1beta_Plan[]; 10 | } 11 | 12 | export interface ListPlansResponse__Output { 13 | plan: _build_stack_nucleate_v1beta_Plan__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/PaymentSource.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | /** 4 | * PaymentSource such as a credit-card 5 | */ 6 | export interface PaymentSource { 7 | number?: string; 8 | expYear?: string; 9 | expMonth?: string; 10 | cvc?: string; 11 | addressZip?: string; 12 | } 13 | 14 | /** 15 | * PaymentSource such as a credit-card 16 | */ 17 | export interface PaymentSource__Output { 18 | number: string; 19 | expYear: string; 20 | expMonth: string; 21 | cvc: string; 22 | addressZip: string; 23 | } 24 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/Plan.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | import type { Long } from '@grpc/proto-loader'; 4 | 5 | export interface Plan { 6 | id?: string; 7 | name?: string; 8 | amount?: number | string | Long; 9 | currency?: string; 10 | interval?: string; 11 | description?: string; 12 | trialPeriodDays?: number; 13 | primaryFeature?: string; 14 | } 15 | 16 | export interface Plan__Output { 17 | id: string; 18 | name: string; 19 | amount: Long; 20 | currency: string; 21 | interval: string; 22 | description: string; 23 | trialPeriodDays: number; 24 | primaryFeature: string; 25 | } 26 | -------------------------------------------------------------------------------- /src/proto/build/stack/nucleate/v1beta/Subscription.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/nucleate.proto 2 | 3 | import type { Long } from '@grpc/proto-loader'; 4 | 5 | export interface Subscription { 6 | customerId?: string; 7 | planId?: string; 8 | id?: string; 9 | name?: string; 10 | status?: string; 11 | schedule?: string; 12 | quantity?: number; 13 | startDate?: number | string | Long; 14 | trialStart?: number | string | Long; 15 | trialEnd?: number | string | Long; 16 | created?: number | string | Long; 17 | currentPeriodStart?: number | string | Long; 18 | currentPeriodEnd?: number | string | Long; 19 | planAmount?: number | string | Long; 20 | } 21 | 22 | export interface Subscription__Output { 23 | customerId: string; 24 | planId: string; 25 | id: string; 26 | name: string; 27 | status: string; 28 | schedule: string; 29 | quantity: number; 30 | startDate: Long; 31 | trialStart: Long; 32 | trialEnd: Long; 33 | created: Long; 34 | currentPeriodStart: Long; 35 | currentPeriodEnd: Long; 36 | planAmount: Long; 37 | } 38 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/BuildMetadata.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | /** 4 | * Payload of an event reporting custom key-value metadata associated with the 5 | * build. 6 | */ 7 | export interface BuildMetadata { 8 | /** 9 | * Custom metadata for the build. 10 | */ 11 | metadata?: { [key: string]: string }; 12 | } 13 | 14 | /** 15 | * Payload of an event reporting custom key-value metadata associated with the 16 | * build. 17 | */ 18 | export interface BuildMetadata__Output { 19 | /** 20 | * Custom metadata for the build. 21 | */ 22 | metadata: { [key: string]: string }; 23 | } 24 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/BuildToolLogs.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | import type { 4 | File as _build_event_stream_File, 5 | File__Output as _build_event_stream_File__Output, 6 | } from '../build_event_stream/File'; 7 | 8 | /** 9 | * Event providing additional statistics/logs after completion of the build. 10 | */ 11 | export interface BuildToolLogs { 12 | /** 13 | * Event providing additional statistics/logs after completion of the build. 14 | */ 15 | log?: _build_event_stream_File[]; 16 | } 17 | 18 | /** 19 | * Event providing additional statistics/logs after completion of the build. 20 | */ 21 | export interface BuildToolLogs__Output { 22 | /** 23 | * Event providing additional statistics/logs after completion of the build. 24 | */ 25 | log: _build_event_stream_File__Output[]; 26 | } 27 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/Configuration.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | /** 4 | * Payload of an event reporting details of a given configuration. 5 | */ 6 | export interface Configuration { 7 | mnemonic?: string; 8 | platformName?: string; 9 | cpu?: string; 10 | makeVariable?: { [key: string]: string }; 11 | } 12 | 13 | /** 14 | * Payload of an event reporting details of a given configuration. 15 | */ 16 | export interface Configuration__Output { 17 | mnemonic: string; 18 | platformName: string; 19 | cpu: string; 20 | makeVariable: { [key: string]: string }; 21 | } 22 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/ConvenienceSymlinksIdentified.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | import type { 4 | ConvenienceSymlink as _build_event_stream_ConvenienceSymlink, 5 | ConvenienceSymlink__Output as _build_event_stream_ConvenienceSymlink__Output, 6 | } from '../build_event_stream/ConvenienceSymlink'; 7 | 8 | /** 9 | * Event describing all convenience symlinks (i.e., workspace symlinks) to be 10 | * created or deleted once the execution phase has begun. Note that this event 11 | * does not say anything about whether or not the build tool actually executed 12 | * these filesystem operations; it only says what logical operations should be 13 | * performed. This event is emitted exactly once per build; if no symlinks are 14 | * to be modified, the event is still emitted with empty contents. 15 | */ 16 | export interface ConvenienceSymlinksIdentified { 17 | convenienceSymlinks?: _build_event_stream_ConvenienceSymlink[]; 18 | } 19 | 20 | /** 21 | * Event describing all convenience symlinks (i.e., workspace symlinks) to be 22 | * created or deleted once the execution phase has begun. Note that this event 23 | * does not say anything about whether or not the build tool actually executed 24 | * these filesystem operations; it only says what logical operations should be 25 | * performed. This event is emitted exactly once per build; if no symlinks are 26 | * to be modified, the event is still emitted with empty contents. 27 | */ 28 | export interface ConvenienceSymlinksIdentified__Output { 29 | convenienceSymlinks: _build_event_stream_ConvenienceSymlink__Output[]; 30 | } 31 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/Fetch.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | /** 4 | * Payload of an event indicating that an external resource was fetched. This 5 | * event will only occur in streams where an actual fetch happened, not in ones 6 | * where a cached copy of the entity to be fetched was used. 7 | */ 8 | export interface Fetch { 9 | /** 10 | * Payload of an event indicating that an external resource was fetched. This 11 | * event will only occur in streams where an actual fetch happened, not in ones 12 | * where a cached copy of the entity to be fetched was used. 13 | */ 14 | success?: boolean; 15 | } 16 | 17 | /** 18 | * Payload of an event indicating that an external resource was fetched. This 19 | * event will only occur in streams where an actual fetch happened, not in ones 20 | * where a cached copy of the entity to be fetched was used. 21 | */ 22 | export interface Fetch__Output { 23 | /** 24 | * Payload of an event indicating that an external resource was fetched. This 25 | * event will only occur in streams where an actual fetch happened, not in ones 26 | * where a cached copy of the entity to be fetched was used. 27 | */ 28 | success: boolean; 29 | } 30 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/File.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | export interface File { 4 | /** 5 | * identifier indicating the nature of the file (e.g., "stdout", "stderr") 6 | */ 7 | name?: string; 8 | /** 9 | * A location where the contents of the file can be found. The string is 10 | * encoded according to RFC2396. 11 | */ 12 | uri?: string; 13 | /** 14 | * The contents of the file, if they are guaranteed to be short. 15 | */ 16 | contents?: Buffer | Uint8Array | string; 17 | /** 18 | * A sequence of prefixes to apply to the file name to construct a full path. 19 | * In most but not all cases, there will be 3 entries: 20 | * 1. A root output directory, eg "bazel-out" 21 | * 2. A configuration mnemonic, eg "k8-fastbuild" 22 | * 3. An output category, eg "genfiles" 23 | */ 24 | pathPrefix?: string[]; 25 | file?: 'uri' | 'contents'; 26 | } 27 | 28 | export interface File__Output { 29 | /** 30 | * identifier indicating the nature of the file (e.g., "stdout", "stderr") 31 | */ 32 | name: string; 33 | /** 34 | * A location where the contents of the file can be found. The string is 35 | * encoded according to RFC2396. 36 | */ 37 | uri?: string; 38 | /** 39 | * The contents of the file, if they are guaranteed to be short. 40 | */ 41 | contents?: Buffer; 42 | /** 43 | * A sequence of prefixes to apply to the file name to construct a full path. 44 | * In most but not all cases, there will be 3 entries: 45 | * 1. A root output directory, eg "bazel-out" 46 | * 2. A configuration mnemonic, eg "k8-fastbuild" 47 | * 3. An output category, eg "genfiles" 48 | */ 49 | pathPrefix: string[]; 50 | file: 'uri' | 'contents'; 51 | } 52 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/NamedSetOfFiles.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | import type { 4 | File as _build_event_stream_File, 5 | File__Output as _build_event_stream_File__Output, 6 | } from '../build_event_stream/File'; 7 | import type { 8 | _build_event_stream_BuildEventId_NamedSetOfFilesId, 9 | _build_event_stream_BuildEventId_NamedSetOfFilesId__Output, 10 | } from '../build_event_stream/BuildEventId'; 11 | 12 | /** 13 | * Payload of a message to describe a set of files, usually build artifacts, to 14 | * be referred to later by their name. In this way, files that occur identically 15 | * as outputs of several targets have to be named only once. 16 | */ 17 | export interface NamedSetOfFiles { 18 | /** 19 | * Files that belong to this named set of files. 20 | */ 21 | files?: _build_event_stream_File[]; 22 | /** 23 | * Other named sets whose members also belong to this set. 24 | */ 25 | fileSets?: _build_event_stream_BuildEventId_NamedSetOfFilesId[]; 26 | } 27 | 28 | /** 29 | * Payload of a message to describe a set of files, usually build artifacts, to 30 | * be referred to later by their name. In this way, files that occur identically 31 | * as outputs of several targets have to be named only once. 32 | */ 33 | export interface NamedSetOfFiles__Output { 34 | /** 35 | * Files that belong to this named set of files. 36 | */ 37 | files: _build_event_stream_File__Output[]; 38 | /** 39 | * Other named sets whose members also belong to this set. 40 | */ 41 | fileSets: _build_event_stream_BuildEventId_NamedSetOfFilesId__Output[]; 42 | } 43 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/OptionsParsed.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | import type { 4 | InvocationPolicy as _blaze_invocation_policy_InvocationPolicy, 5 | InvocationPolicy__Output as _blaze_invocation_policy_InvocationPolicy__Output, 6 | } from '../blaze/invocation_policy/InvocationPolicy'; 7 | 8 | /** 9 | * Payload of an event reporting on the parsed options, grouped in various ways. 10 | */ 11 | export interface OptionsParsed { 12 | startupOptions?: string[]; 13 | explicitStartupOptions?: string[]; 14 | cmdLine?: string[]; 15 | explicitCmdLine?: string[]; 16 | invocationPolicy?: _blaze_invocation_policy_InvocationPolicy | null; 17 | toolTag?: string; 18 | } 19 | 20 | /** 21 | * Payload of an event reporting on the parsed options, grouped in various ways. 22 | */ 23 | export interface OptionsParsed__Output { 24 | startupOptions: string[]; 25 | explicitStartupOptions: string[]; 26 | cmdLine: string[]; 27 | explicitCmdLine: string[]; 28 | invocationPolicy: _blaze_invocation_policy_InvocationPolicy__Output | null; 29 | toolTag: string; 30 | } 31 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/OutputGroup.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | import type { 4 | _build_event_stream_BuildEventId_NamedSetOfFilesId, 5 | _build_event_stream_BuildEventId_NamedSetOfFilesId__Output, 6 | } from '../build_event_stream/BuildEventId'; 7 | 8 | /** 9 | * Collection of all output files belonging to that output group. 10 | */ 11 | export interface OutputGroup { 12 | /** 13 | * Name of the output group 14 | */ 15 | name?: string; 16 | /** 17 | * List of file sets that belong to this output group as well. 18 | */ 19 | fileSets?: _build_event_stream_BuildEventId_NamedSetOfFilesId[]; 20 | } 21 | 22 | /** 23 | * Collection of all output files belonging to that output group. 24 | */ 25 | export interface OutputGroup__Output { 26 | /** 27 | * Name of the output group 28 | */ 29 | name: string; 30 | /** 31 | * List of file sets that belong to this output group as well. 32 | */ 33 | fileSets: _build_event_stream_BuildEventId_NamedSetOfFilesId__Output[]; 34 | } 35 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/PatternExpanded.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | /** 4 | * Payload of the event indicating the expansion of a target pattern. 5 | * The main information is in the chaining part: the id will contain the 6 | * target pattern that was expanded and the children id will contain the 7 | * target or target pattern it was expanded to. 8 | */ 9 | export interface PatternExpanded {} 10 | 11 | /** 12 | * Payload of the event indicating the expansion of a target pattern. 13 | * The main information is in the chaining part: the id will contain the 14 | * target pattern that was expanded and the children id will contain the 15 | * target or target pattern it was expanded to. 16 | */ 17 | export interface PatternExpanded__Output {} 18 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/Progress.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | /** 4 | * Payload of an event summarizing the progress of the build so far. Those 5 | * events are also used to be parents of events where the more logical parent 6 | * event cannot be posted yet as the needed information is not yet complete. 7 | */ 8 | export interface Progress { 9 | /** 10 | * The next chunk of stdout that bazel produced since the last progress event 11 | * or the beginning of the build. 12 | */ 13 | stdout?: string; 14 | /** 15 | * The next chunk of stderr that bazel produced since the last progress event 16 | * or the beginning of the build. 17 | */ 18 | stderr?: string; 19 | } 20 | 21 | /** 22 | * Payload of an event summarizing the progress of the build so far. Those 23 | * events are also used to be parents of events where the more logical parent 24 | * event cannot be posted yet as the needed information is not yet complete. 25 | */ 26 | export interface Progress__Output { 27 | /** 28 | * The next chunk of stdout that bazel produced since the last progress event 29 | * or the beginning of the build. 30 | */ 31 | stdout: string; 32 | /** 33 | * The next chunk of stderr that bazel produced since the last progress event 34 | * or the beginning of the build. 35 | */ 36 | stderr: string; 37 | } 38 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/TestSize.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | /** 4 | * Enumeration type characterizing the size of a test, as specified by the 5 | * test rule. 6 | */ 7 | export enum TestSize { 8 | UNKNOWN = 0, 9 | SMALL = 1, 10 | MEDIUM = 2, 11 | LARGE = 3, 12 | ENORMOUS = 4, 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/TestStatus.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | export enum TestStatus { 4 | NO_STATUS = 0, 5 | PASSED = 1, 6 | FLAKY = 2, 7 | TIMEOUT = 3, 8 | FAILED = 4, 9 | INCOMPLETE = 5, 10 | REMOTE_FAILURE = 6, 11 | FAILED_TO_BUILD = 7, 12 | TOOL_HALTED_BEFORE_TESTING = 8, 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/WorkspaceConfig.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | /** 4 | * Configuration related to the blaze workspace and output tree. 5 | */ 6 | export interface WorkspaceConfig { 7 | /** 8 | * The root of the local blaze exec root. All output files live underneath 9 | * this at "blaze-out/". 10 | */ 11 | localExecRoot?: string; 12 | } 13 | 14 | /** 15 | * Configuration related to the blaze workspace and output tree. 16 | */ 17 | export interface WorkspaceConfig__Output { 18 | /** 19 | * The root of the local blaze exec root. All output files live underneath 20 | * this at "blaze-out/". 21 | */ 22 | localExecRoot: string; 23 | } 24 | -------------------------------------------------------------------------------- /src/proto/build_event_stream/WorkspaceStatus.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_event_stream.proto 2 | 3 | export interface _build_event_stream_WorkspaceStatus_Item { 4 | key?: string; 5 | value?: string; 6 | } 7 | 8 | export interface _build_event_stream_WorkspaceStatus_Item__Output { 9 | key: string; 10 | value: string; 11 | } 12 | 13 | /** 14 | * Payload of an event reporting the workspace status. Key-value pairs can be 15 | * provided by specifying the workspace_status_command to an executable that 16 | * returns one key-value pair per line of output (key and value separated by a 17 | * space). 18 | */ 19 | export interface WorkspaceStatus { 20 | item?: _build_event_stream_WorkspaceStatus_Item[]; 21 | } 22 | 23 | /** 24 | * Payload of an event reporting the workspace status. Key-value pairs can be 25 | * provided by specifying the workspace_status_command to an executable that 26 | * returns one key-value pair per line of output (key and value separated by a 27 | * space). 28 | */ 29 | export interface WorkspaceStatus__Output { 30 | item: _build_event_stream_WorkspaceStatus_Item__Output[]; 31 | } 32 | -------------------------------------------------------------------------------- /src/proto/build_status.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | google: { 10 | api: { 11 | CustomHttpPattern: MessageTypeDefinition; 12 | Http: MessageTypeDefinition; 13 | HttpRule: MessageTypeDefinition; 14 | }; 15 | devtools: { 16 | build: { 17 | v1: { 18 | BuildStatus: MessageTypeDefinition; 19 | }; 20 | }; 21 | }; 22 | protobuf: { 23 | Any: MessageTypeDefinition; 24 | DescriptorProto: MessageTypeDefinition; 25 | EnumDescriptorProto: MessageTypeDefinition; 26 | EnumOptions: MessageTypeDefinition; 27 | EnumValueDescriptorProto: MessageTypeDefinition; 28 | EnumValueOptions: MessageTypeDefinition; 29 | FieldDescriptorProto: MessageTypeDefinition; 30 | FieldOptions: MessageTypeDefinition; 31 | FileDescriptorProto: MessageTypeDefinition; 32 | FileDescriptorSet: MessageTypeDefinition; 33 | FileOptions: MessageTypeDefinition; 34 | GeneratedCodeInfo: MessageTypeDefinition; 35 | MessageOptions: MessageTypeDefinition; 36 | MethodDescriptorProto: MessageTypeDefinition; 37 | MethodOptions: MessageTypeDefinition; 38 | OneofDescriptorProto: MessageTypeDefinition; 39 | OneofOptions: MessageTypeDefinition; 40 | ServiceDescriptorProto: MessageTypeDefinition; 41 | ServiceOptions: MessageTypeDefinition; 42 | SourceCodeInfo: MessageTypeDefinition; 43 | UninterpretedOption: MessageTypeDefinition; 44 | }; 45 | }; 46 | } 47 | -------------------------------------------------------------------------------- /src/proto/client.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | google: { 10 | api: {}; 11 | protobuf: { 12 | DescriptorProto: MessageTypeDefinition; 13 | EnumDescriptorProto: MessageTypeDefinition; 14 | EnumOptions: MessageTypeDefinition; 15 | EnumValueDescriptorProto: MessageTypeDefinition; 16 | EnumValueOptions: MessageTypeDefinition; 17 | FieldDescriptorProto: MessageTypeDefinition; 18 | FieldOptions: MessageTypeDefinition; 19 | FileDescriptorProto: MessageTypeDefinition; 20 | FileDescriptorSet: MessageTypeDefinition; 21 | FileOptions: MessageTypeDefinition; 22 | GeneratedCodeInfo: MessageTypeDefinition; 23 | MessageOptions: MessageTypeDefinition; 24 | MethodDescriptorProto: MessageTypeDefinition; 25 | MethodOptions: MessageTypeDefinition; 26 | OneofDescriptorProto: MessageTypeDefinition; 27 | OneofOptions: MessageTypeDefinition; 28 | ServiceDescriptorProto: MessageTypeDefinition; 29 | ServiceOptions: MessageTypeDefinition; 30 | SourceCodeInfo: MessageTypeDefinition; 31 | UninterpretedOption: MessageTypeDefinition; 32 | }; 33 | }; 34 | } 35 | -------------------------------------------------------------------------------- /src/proto/command_line.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | command_line: { 10 | ChunkList: MessageTypeDefinition; 11 | CommandLine: MessageTypeDefinition; 12 | CommandLineSection: MessageTypeDefinition; 13 | Option: MessageTypeDefinition; 14 | OptionList: MessageTypeDefinition; 15 | }; 16 | options: { 17 | OptionEffectTag: EnumTypeDefinition; 18 | OptionMetadataTag: EnumTypeDefinition; 19 | }; 20 | } 21 | -------------------------------------------------------------------------------- /src/proto/command_line/ChunkList.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/command_line.proto 2 | 3 | /** 4 | * Wrapper to allow a list of strings in the "oneof" section_type. 5 | */ 6 | export interface ChunkList { 7 | /** 8 | * Wrapper to allow a list of strings in the "oneof" section_type. 9 | */ 10 | chunk?: string[]; 11 | } 12 | 13 | /** 14 | * Wrapper to allow a list of strings in the "oneof" section_type. 15 | */ 16 | export interface ChunkList__Output { 17 | /** 18 | * Wrapper to allow a list of strings in the "oneof" section_type. 19 | */ 20 | chunk: string[]; 21 | } 22 | -------------------------------------------------------------------------------- /src/proto/command_line/CommandLineSection.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/command_line.proto 2 | 3 | import type { 4 | ChunkList as _command_line_ChunkList, 5 | ChunkList__Output as _command_line_ChunkList__Output, 6 | } from '../command_line/ChunkList'; 7 | import type { 8 | OptionList as _command_line_OptionList, 9 | OptionList__Output as _command_line_OptionList__Output, 10 | } from '../command_line/OptionList'; 11 | 12 | /** 13 | * A section of the Bazel command line. 14 | */ 15 | export interface CommandLineSection { 16 | /** 17 | * The name of this section, such as "startup_option" or "command". 18 | */ 19 | sectionLabel?: string; 20 | /** 21 | * Sections with non-options, such as the list of targets or the command, 22 | * should use simple string chunks. 23 | */ 24 | chunkList?: _command_line_ChunkList | null; 25 | /** 26 | * Startup and command options are lists of options and belong here. 27 | */ 28 | optionList?: _command_line_OptionList | null; 29 | sectionType?: 'chunkList' | 'optionList'; 30 | } 31 | 32 | /** 33 | * A section of the Bazel command line. 34 | */ 35 | export interface CommandLineSection__Output { 36 | /** 37 | * The name of this section, such as "startup_option" or "command". 38 | */ 39 | sectionLabel: string; 40 | /** 41 | * Sections with non-options, such as the list of targets or the command, 42 | * should use simple string chunks. 43 | */ 44 | chunkList?: _command_line_ChunkList__Output | null; 45 | /** 46 | * Startup and command options are lists of options and belong here. 47 | */ 48 | optionList?: _command_line_OptionList__Output | null; 49 | sectionType: 'chunkList' | 'optionList'; 50 | } 51 | -------------------------------------------------------------------------------- /src/proto/command_line/OptionList.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/command_line.proto 2 | 3 | import type { 4 | Option as _command_line_Option, 5 | Option__Output as _command_line_Option__Output, 6 | } from '../command_line/Option'; 7 | 8 | /** 9 | * Wrapper to allow a list of options in the "oneof" section_type. 10 | */ 11 | export interface OptionList { 12 | /** 13 | * Wrapper to allow a list of options in the "oneof" section_type. 14 | */ 15 | option?: _command_line_Option[]; 16 | } 17 | 18 | /** 19 | * Wrapper to allow a list of options in the "oneof" section_type. 20 | */ 21 | export interface OptionList__Output { 22 | /** 23 | * Wrapper to allow a list of options in the "oneof" section_type. 24 | */ 25 | option: _command_line_Option__Output[]; 26 | } 27 | -------------------------------------------------------------------------------- /src/proto/failure_details/BuildProgress.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | export enum _failure_details_BuildProgress_Code { 6 | BUILD_PROGRESS_UNKNOWN = 0, 7 | OUTPUT_INITIALIZATION = 3, 8 | BES_RUNS_PER_TEST_LIMIT_UNSUPPORTED = 4, 9 | BES_LOCAL_WRITE_ERROR = 5, 10 | BES_INITIALIZATION_ERROR = 6, 11 | BES_UPLOAD_TIMEOUT_ERROR = 7, 12 | BES_FILE_WRITE_TIMEOUT = 8, 13 | BES_FILE_WRITE_IO_ERROR = 9, 14 | BES_FILE_WRITE_INTERRUPTED = 10, 15 | BES_FILE_WRITE_CANCELED = 11, 16 | BES_FILE_WRITE_UNKNOWN_ERROR = 12, 17 | BES_UPLOAD_LOCAL_FILE_ERROR = 13, 18 | BES_STREAM_NOT_RETRYING_FAILURE = 14, 19 | BES_STREAM_COMPLETED_WITH_UNACK_EVENTS_ERROR = 15, 20 | BES_STREAM_COMPLETED_WITH_UNSENT_EVENTS_ERROR = 16, 21 | BES_UPLOAD_RETRY_LIMIT_EXCEEDED_FAILURE = 17, 22 | } 23 | 24 | export interface BuildProgress { 25 | code?: _failure_details_BuildProgress_Code | keyof typeof _failure_details_BuildProgress_Code; 26 | } 27 | 28 | export interface BuildProgress__Output { 29 | code: _failure_details_BuildProgress_Code; 30 | } 31 | -------------------------------------------------------------------------------- /src/proto/failure_details/ClientEnvironment.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | export enum _failure_details_ClientEnvironment_Code { 6 | CLIENT_ENVIRONMENT_UNKNOWN = 0, 7 | CLIENT_CWD_MALFORMED = 1, 8 | } 9 | 10 | export interface ClientEnvironment { 11 | code?: 12 | | _failure_details_ClientEnvironment_Code 13 | | keyof typeof _failure_details_ClientEnvironment_Code; 14 | } 15 | 16 | export interface ClientEnvironment__Output { 17 | code: _failure_details_ClientEnvironment_Code; 18 | } 19 | -------------------------------------------------------------------------------- /src/proto/failure_details/Crash.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | import type { 4 | Throwable as _failure_details_Throwable, 5 | Throwable__Output as _failure_details_Throwable__Output, 6 | } from '../failure_details/Throwable'; 7 | 8 | // Original file: proto/failure_details.proto 9 | 10 | export enum _failure_details_Crash_Code { 11 | CRASH_UNKNOWN = 0, 12 | CRASH_OOM = 1, 13 | } 14 | 15 | export interface Crash { 16 | code?: _failure_details_Crash_Code | keyof typeof _failure_details_Crash_Code; 17 | /** 18 | * The cause chain of the crash, with the outermost throwable first. Limited 19 | * to the outermost exception and at most 4 nested causes (so, max size of 5). 20 | */ 21 | causes?: _failure_details_Throwable[]; 22 | } 23 | 24 | export interface Crash__Output { 25 | code: _failure_details_Crash_Code; 26 | /** 27 | * The cause chain of the crash, with the outermost throwable first. Limited 28 | * to the outermost exception and at most 4 nested causes (so, max size of 5). 29 | */ 30 | causes: _failure_details_Throwable__Output[]; 31 | } 32 | -------------------------------------------------------------------------------- /src/proto/failure_details/ExternalRepository.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | export enum _failure_details_ExternalRepository_Code { 6 | EXTERNAL_REPOSITORY_UNKNOWN = 0, 7 | OVERRIDE_DISALLOWED_MANAGED_DIRECTORIES = 1, 8 | } 9 | 10 | export interface ExternalRepository { 11 | code?: 12 | | _failure_details_ExternalRepository_Code 13 | | keyof typeof _failure_details_ExternalRepository_Code; 14 | } 15 | 16 | export interface ExternalRepository__Output { 17 | code: _failure_details_ExternalRepository_Code; 18 | } 19 | -------------------------------------------------------------------------------- /src/proto/failure_details/FailureDetailMetadata.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | export interface FailureDetailMetadata { 4 | exitCode?: number; 5 | } 6 | 7 | export interface FailureDetailMetadata__Output { 8 | exitCode: number; 9 | } 10 | -------------------------------------------------------------------------------- /src/proto/failure_details/Interrupted.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | export enum _failure_details_Interrupted_Code { 6 | /** 7 | * Interrupted at an unspecified time. 8 | */ 9 | INTERRUPTED_UNKNOWN = 0, 10 | } 11 | 12 | export interface Interrupted { 13 | code?: _failure_details_Interrupted_Code | keyof typeof _failure_details_Interrupted_Code; 14 | } 15 | 16 | export interface Interrupted__Output { 17 | code: _failure_details_Interrupted_Code; 18 | } 19 | -------------------------------------------------------------------------------- /src/proto/failure_details/PackageOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | export enum _failure_details_PackageOptions_Code { 6 | PACKAGE_OPTIONS_UNKNOWN = 0, 7 | PACKAGE_PATH_INVALID = 1, 8 | } 9 | 10 | export interface PackageOptions { 11 | code?: _failure_details_PackageOptions_Code | keyof typeof _failure_details_PackageOptions_Code; 12 | } 13 | 14 | export interface PackageOptions__Output { 15 | code: _failure_details_PackageOptions_Code; 16 | } 17 | -------------------------------------------------------------------------------- /src/proto/failure_details/RemoteExecution.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | /** 6 | * The association of some of these options with exit code 2, "command line 7 | * error", seems sketchy. Especially worth reconsidering are the channel init 8 | * failure modes, which can correspond to failures occurring in gRPC setup. 9 | * These all correspond with current Bazel behavior. 10 | */ 11 | export enum _failure_details_RemoteExecution_Code { 12 | REMOTE_EXECUTION_UNKNOWN = 0, 13 | CAPABILITIES_QUERY_FAILURE = 1, 14 | CREDENTIALS_INIT_FAILURE = 2, 15 | CACHE_INIT_FAILURE = 3, 16 | RPC_LOG_FAILURE = 4, 17 | EXEC_CHANNEL_INIT_FAILURE = 5, 18 | CACHE_CHANNEL_INIT_FAILURE = 6, 19 | DOWNLOADER_CHANNEL_INIT_FAILURE = 7, 20 | LOG_DIR_CLEANUP_FAILURE = 8, 21 | CLIENT_SERVER_INCOMPATIBLE = 9, 22 | DOWNLOADED_INPUTS_DELETION_FAILURE = 10, 23 | } 24 | 25 | export interface RemoteExecution { 26 | code?: _failure_details_RemoteExecution_Code | keyof typeof _failure_details_RemoteExecution_Code; 27 | } 28 | 29 | export interface RemoteExecution__Output { 30 | code: _failure_details_RemoteExecution_Code; 31 | } 32 | -------------------------------------------------------------------------------- /src/proto/failure_details/RemoteOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | export enum _failure_details_RemoteOptions_Code { 6 | REMOTE_OPTIONS_UNKNOWN = 0, 7 | REMOTE_DEFAULT_EXEC_PROPERTIES_LOGIC_ERROR = 1, 8 | /** 9 | * Credentials could not be read from the requested file/socket/process/etc. 10 | */ 11 | CREDENTIALS_READ_FAILURE = 2, 12 | /** 13 | * Credentials could not be written to a shared, temporary file. 14 | */ 15 | CREDENTIALS_WRITE_FAILURE = 3, 16 | DOWNLOADER_WITHOUT_GRPC_CACHE = 4, 17 | EXECUTION_WITH_INVALID_CACHE = 5, 18 | } 19 | 20 | export interface RemoteOptions { 21 | code?: _failure_details_RemoteOptions_Code | keyof typeof _failure_details_RemoteOptions_Code; 22 | } 23 | 24 | export interface RemoteOptions__Output { 25 | code: _failure_details_RemoteOptions_Code; 26 | } 27 | -------------------------------------------------------------------------------- /src/proto/failure_details/SymlinkForest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | // Original file: proto/failure_details.proto 4 | 5 | export enum _failure_details_SymlinkForest_Code { 6 | SYMLINK_FOREST_UNKNOWN = 0, 7 | TOPLEVEL_OUTDIR_PACKAGE_PATH_CONFLICT = 1, 8 | TOPLEVEL_OUTDIR_USED_AS_SOURCE = 2, 9 | } 10 | 11 | export interface SymlinkForest { 12 | code?: _failure_details_SymlinkForest_Code | keyof typeof _failure_details_SymlinkForest_Code; 13 | } 14 | 15 | export interface SymlinkForest__Output { 16 | code: _failure_details_SymlinkForest_Code; 17 | } 18 | -------------------------------------------------------------------------------- /src/proto/failure_details/Throwable.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/failure_details.proto 2 | 3 | export interface Throwable { 4 | /** 5 | * The class name of the java.lang.Throwable. 6 | */ 7 | throwableClass?: string; 8 | /** 9 | * The throwable's message. 10 | */ 11 | message?: string; 12 | /** 13 | * The result of calling toString on the deepest (i.e. closest to the 14 | * throwable's construction site) 1000 (or fewer) StackTraceElements. 15 | * Unstructured to simplify string matching. 16 | */ 17 | stackTrace?: string[]; 18 | } 19 | 20 | export interface Throwable__Output { 21 | /** 22 | * The class name of the java.lang.Throwable. 23 | */ 24 | throwableClass: string; 25 | /** 26 | * The throwable's message. 27 | */ 28 | message: string; 29 | /** 30 | * The result of calling toString on the deepest (i.e. closest to the 31 | * throwable's construction site) 1000 (or fewer) StackTraceElements. 32 | * Unstructured to simplify string matching. 33 | */ 34 | stackTrace: string[]; 35 | } 36 | -------------------------------------------------------------------------------- /src/proto/google/api/CustomHttpPattern.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/http.proto 2 | 3 | /** 4 | * A custom pattern is used for defining custom HTTP verb. 5 | */ 6 | export interface CustomHttpPattern { 7 | /** 8 | * The name of this custom HTTP verb. 9 | */ 10 | kind?: string; 11 | /** 12 | * The path matched by this custom verb. 13 | */ 14 | path?: string; 15 | } 16 | 17 | /** 18 | * A custom pattern is used for defining custom HTTP verb. 19 | */ 20 | export interface CustomHttpPattern__Output { 21 | /** 22 | * The name of this custom HTTP verb. 23 | */ 24 | kind: string; 25 | /** 26 | * The path matched by this custom verb. 27 | */ 28 | path: string; 29 | } 30 | -------------------------------------------------------------------------------- /src/proto/google/devtools/build/v1/ConsoleOutputStream.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/build_events.proto 2 | 3 | /** 4 | * The type of console output stream. 5 | */ 6 | export enum ConsoleOutputStream { 7 | /** 8 | * Unspecified or unknown. 9 | */ 10 | UNKNOWN = 0, 11 | /** 12 | * Normal output stream. 13 | */ 14 | STDOUT = 1, 15 | /** 16 | * Error output stream. 17 | */ 18 | STDERR = 2, 19 | } 20 | -------------------------------------------------------------------------------- /src/proto/google/devtools/build/v1/PublishBuildToolEventStreamResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/publish_build_event.proto 2 | 3 | import type { 4 | StreamId as _google_devtools_build_v1_StreamId, 5 | StreamId__Output as _google_devtools_build_v1_StreamId__Output, 6 | } from '../../../../google/devtools/build/v1/StreamId'; 7 | import type { Long } from '@grpc/proto-loader'; 8 | 9 | /** 10 | * States which event has been committed. Any failure to commit will cause 11 | * RPC errors, hence not recorded by this proto. 12 | */ 13 | export interface PublishBuildToolEventStreamResponse { 14 | /** 15 | * The stream that contains this event. 16 | */ 17 | streamId?: _google_devtools_build_v1_StreamId | null; 18 | /** 19 | * The sequence number of this event that has been committed. 20 | */ 21 | sequenceNumber?: number | string | Long; 22 | } 23 | 24 | /** 25 | * States which event has been committed. Any failure to commit will cause 26 | * RPC errors, hence not recorded by this proto. 27 | */ 28 | export interface PublishBuildToolEventStreamResponse__Output { 29 | /** 30 | * The stream that contains this event. 31 | */ 32 | streamId: _google_devtools_build_v1_StreamId__Output | null; 33 | /** 34 | * The sequence number of this event that has been committed. 35 | */ 36 | sequenceNumber: Long; 37 | } 38 | -------------------------------------------------------------------------------- /src/proto/google/longrunning/CancelOperationRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/operations.proto 2 | 3 | /** 4 | * The request message for [Operations.CancelOperation][google.longrunning.Operations.CancelOperation]. 5 | */ 6 | export interface CancelOperationRequest { 7 | /** 8 | * The name of the operation resource to be cancelled. 9 | */ 10 | name?: string; 11 | } 12 | 13 | /** 14 | * The request message for [Operations.CancelOperation][google.longrunning.Operations.CancelOperation]. 15 | */ 16 | export interface CancelOperationRequest__Output { 17 | /** 18 | * The name of the operation resource to be cancelled. 19 | */ 20 | name: string; 21 | } 22 | -------------------------------------------------------------------------------- /src/proto/google/longrunning/DeleteOperationRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/operations.proto 2 | 3 | /** 4 | * The request message for [Operations.DeleteOperation][google.longrunning.Operations.DeleteOperation]. 5 | */ 6 | export interface DeleteOperationRequest { 7 | /** 8 | * The name of the operation resource to be deleted. 9 | */ 10 | name?: string; 11 | } 12 | 13 | /** 14 | * The request message for [Operations.DeleteOperation][google.longrunning.Operations.DeleteOperation]. 15 | */ 16 | export interface DeleteOperationRequest__Output { 17 | /** 18 | * The name of the operation resource to be deleted. 19 | */ 20 | name: string; 21 | } 22 | -------------------------------------------------------------------------------- /src/proto/google/longrunning/GetOperationRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/operations.proto 2 | 3 | /** 4 | * The request message for [Operations.GetOperation][google.longrunning.Operations.GetOperation]. 5 | */ 6 | export interface GetOperationRequest { 7 | /** 8 | * The name of the operation resource. 9 | */ 10 | name?: string; 11 | } 12 | 13 | /** 14 | * The request message for [Operations.GetOperation][google.longrunning.Operations.GetOperation]. 15 | */ 16 | export interface GetOperationRequest__Output { 17 | /** 18 | * The name of the operation resource. 19 | */ 20 | name: string; 21 | } 22 | -------------------------------------------------------------------------------- /src/proto/google/longrunning/ListOperationsRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/operations.proto 2 | 3 | /** 4 | * The request message for [Operations.ListOperations][google.longrunning.Operations.ListOperations]. 5 | */ 6 | export interface ListOperationsRequest { 7 | /** 8 | * The standard list filter. 9 | */ 10 | filter?: string; 11 | /** 12 | * The standard list page size. 13 | */ 14 | pageSize?: number; 15 | /** 16 | * The standard list page token. 17 | */ 18 | pageToken?: string; 19 | /** 20 | * The name of the operation's parent resource. 21 | */ 22 | name?: string; 23 | } 24 | 25 | /** 26 | * The request message for [Operations.ListOperations][google.longrunning.Operations.ListOperations]. 27 | */ 28 | export interface ListOperationsRequest__Output { 29 | /** 30 | * The standard list filter. 31 | */ 32 | filter: string; 33 | /** 34 | * The standard list page size. 35 | */ 36 | pageSize: number; 37 | /** 38 | * The standard list page token. 39 | */ 40 | pageToken: string; 41 | /** 42 | * The name of the operation's parent resource. 43 | */ 44 | name: string; 45 | } 46 | -------------------------------------------------------------------------------- /src/proto/google/longrunning/ListOperationsResponse.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/operations.proto 2 | 3 | import type { 4 | Operation as _google_longrunning_Operation, 5 | Operation__Output as _google_longrunning_Operation__Output, 6 | } from '../../google/longrunning/Operation'; 7 | 8 | /** 9 | * The response message for [Operations.ListOperations][google.longrunning.Operations.ListOperations]. 10 | */ 11 | export interface ListOperationsResponse { 12 | /** 13 | * A list of operations that matches the specified filter in the request. 14 | */ 15 | operations?: _google_longrunning_Operation[]; 16 | /** 17 | * The standard List next-page token. 18 | */ 19 | nextPageToken?: string; 20 | } 21 | 22 | /** 23 | * The response message for [Operations.ListOperations][google.longrunning.Operations.ListOperations]. 24 | */ 25 | export interface ListOperationsResponse__Output { 26 | /** 27 | * A list of operations that matches the specified filter in the request. 28 | */ 29 | operations: _google_longrunning_Operation__Output[]; 30 | /** 31 | * The standard List next-page token. 32 | */ 33 | nextPageToken: string; 34 | } 35 | -------------------------------------------------------------------------------- /src/proto/google/longrunning/WaitOperationRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/operations.proto 2 | 3 | import type { 4 | Duration as _google_protobuf_Duration, 5 | Duration__Output as _google_protobuf_Duration__Output, 6 | } from '../../google/protobuf/Duration'; 7 | 8 | /** 9 | * The request message for [Operations.WaitOperation][google.longrunning.Operations.WaitOperation]. 10 | */ 11 | export interface WaitOperationRequest { 12 | /** 13 | * The name of the operation resource to wait on. 14 | */ 15 | name?: string; 16 | /** 17 | * The maximum duration to wait before timing out. If left blank, the wait 18 | * will be at most the time permitted by the underlying HTTP/RPC protocol. 19 | * If RPC context deadline is also specified, the shorter one will be used. 20 | */ 21 | timeout?: _google_protobuf_Duration | null; 22 | } 23 | 24 | /** 25 | * The request message for [Operations.WaitOperation][google.longrunning.Operations.WaitOperation]. 26 | */ 27 | export interface WaitOperationRequest__Output { 28 | /** 29 | * The name of the operation resource to wait on. 30 | */ 31 | name: string; 32 | /** 33 | * The maximum duration to wait before timing out. If left blank, the wait 34 | * will be at most the time permitted by the underlying HTTP/RPC protocol. 35 | * If RPC context deadline is also specified, the shorter one will be used. 36 | */ 37 | timeout: _google_protobuf_Duration__Output | null; 38 | } 39 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/Any.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { AnyExtension } from '@grpc/proto-loader'; 4 | 5 | export type Any = 6 | | AnyExtension 7 | | { 8 | type_url: string; 9 | value: Buffer | Uint8Array | string; 10 | }; 11 | 12 | export interface Any__Output { 13 | type_url: string; 14 | value: Buffer; 15 | } 16 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/Duration.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { Long } from '@grpc/proto-loader'; 4 | 5 | export interface Duration { 6 | seconds?: number | string | Long; 7 | nanos?: number; 8 | } 9 | 10 | export interface Duration__Output { 11 | seconds: Long; 12 | nanos: number; 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/Empty.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | export interface Empty {} 4 | 5 | export interface Empty__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/EnumDescriptorProto.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | EnumValueDescriptorProto as _google_protobuf_EnumValueDescriptorProto, 5 | EnumValueDescriptorProto__Output as _google_protobuf_EnumValueDescriptorProto__Output, 6 | } from '../../google/protobuf/EnumValueDescriptorProto'; 7 | import type { 8 | EnumOptions as _google_protobuf_EnumOptions, 9 | EnumOptions__Output as _google_protobuf_EnumOptions__Output, 10 | } from '../../google/protobuf/EnumOptions'; 11 | 12 | export interface EnumDescriptorProto { 13 | name?: string; 14 | value?: _google_protobuf_EnumValueDescriptorProto[]; 15 | options?: _google_protobuf_EnumOptions | null; 16 | } 17 | 18 | export interface EnumDescriptorProto__Output { 19 | name: string; 20 | value: _google_protobuf_EnumValueDescriptorProto__Output[]; 21 | options: _google_protobuf_EnumOptions__Output | null; 22 | } 23 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/EnumOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | 8 | export interface EnumOptions { 9 | allowAlias?: boolean; 10 | deprecated?: boolean; 11 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 12 | } 13 | 14 | export interface EnumOptions__Output { 15 | allowAlias: boolean; 16 | deprecated: boolean; 17 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 18 | } 19 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/EnumValueDescriptorProto.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | EnumValueOptions as _google_protobuf_EnumValueOptions, 5 | EnumValueOptions__Output as _google_protobuf_EnumValueOptions__Output, 6 | } from '../../google/protobuf/EnumValueOptions'; 7 | 8 | export interface EnumValueDescriptorProto { 9 | name?: string; 10 | number?: number; 11 | options?: _google_protobuf_EnumValueOptions | null; 12 | } 13 | 14 | export interface EnumValueDescriptorProto__Output { 15 | name: string; 16 | number: number; 17 | options: _google_protobuf_EnumValueOptions__Output | null; 18 | } 19 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/EnumValueOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | 8 | export interface EnumValueOptions { 9 | deprecated?: boolean; 10 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 11 | } 12 | 13 | export interface EnumValueOptions__Output { 14 | deprecated: boolean; 15 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 16 | } 17 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/FieldOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | 8 | // Original file: null 9 | 10 | export enum _google_protobuf_FieldOptions_CType { 11 | STRING = 0, 12 | CORD = 1, 13 | STRING_PIECE = 2, 14 | } 15 | 16 | // Original file: null 17 | 18 | export enum _google_protobuf_FieldOptions_JSType { 19 | JS_NORMAL = 0, 20 | JS_STRING = 1, 21 | JS_NUMBER = 2, 22 | } 23 | 24 | export interface FieldOptions { 25 | ctype?: _google_protobuf_FieldOptions_CType | keyof typeof _google_protobuf_FieldOptions_CType; 26 | packed?: boolean; 27 | deprecated?: boolean; 28 | lazy?: boolean; 29 | jstype?: _google_protobuf_FieldOptions_JSType | keyof typeof _google_protobuf_FieldOptions_JSType; 30 | weak?: boolean; 31 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 32 | } 33 | 34 | export interface FieldOptions__Output { 35 | ctype: _google_protobuf_FieldOptions_CType; 36 | packed: boolean; 37 | deprecated: boolean; 38 | lazy: boolean; 39 | jstype: _google_protobuf_FieldOptions_JSType; 40 | weak: boolean; 41 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 42 | } 43 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/FileDescriptorSet.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | FileDescriptorProto as _google_protobuf_FileDescriptorProto, 5 | FileDescriptorProto__Output as _google_protobuf_FileDescriptorProto__Output, 6 | } from '../../google/protobuf/FileDescriptorProto'; 7 | 8 | export interface FileDescriptorSet { 9 | file?: _google_protobuf_FileDescriptorProto[]; 10 | } 11 | 12 | export interface FileDescriptorSet__Output { 13 | file: _google_protobuf_FileDescriptorProto__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/FileOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | 8 | // Original file: null 9 | 10 | export enum _google_protobuf_FileOptions_OptimizeMode { 11 | SPEED = 1, 12 | CODE_SIZE = 2, 13 | LITE_RUNTIME = 3, 14 | } 15 | 16 | export interface FileOptions { 17 | javaPackage?: string; 18 | javaOuterClassname?: string; 19 | optimizeFor?: 20 | | _google_protobuf_FileOptions_OptimizeMode 21 | | keyof typeof _google_protobuf_FileOptions_OptimizeMode; 22 | javaMultipleFiles?: boolean; 23 | goPackage?: string; 24 | ccGenericServices?: boolean; 25 | javaGenericServices?: boolean; 26 | pyGenericServices?: boolean; 27 | javaGenerateEqualsAndHash?: boolean; 28 | deprecated?: boolean; 29 | javaStringCheckUtf8?: boolean; 30 | ccEnableArenas?: boolean; 31 | objcClassPrefix?: string; 32 | csharpNamespace?: string; 33 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 34 | } 35 | 36 | export interface FileOptions__Output { 37 | javaPackage: string; 38 | javaOuterClassname: string; 39 | optimizeFor: _google_protobuf_FileOptions_OptimizeMode; 40 | javaMultipleFiles: boolean; 41 | goPackage: string; 42 | ccGenericServices: boolean; 43 | javaGenericServices: boolean; 44 | pyGenericServices: boolean; 45 | javaGenerateEqualsAndHash: boolean; 46 | deprecated: boolean; 47 | javaStringCheckUtf8: boolean; 48 | ccEnableArenas: boolean; 49 | objcClassPrefix: string; 50 | csharpNamespace: string; 51 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 52 | } 53 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/GeneratedCodeInfo.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | export interface _google_protobuf_GeneratedCodeInfo_Annotation { 4 | path?: number[]; 5 | sourceFile?: string; 6 | begin?: number; 7 | end?: number; 8 | } 9 | 10 | export interface _google_protobuf_GeneratedCodeInfo_Annotation__Output { 11 | path: number[]; 12 | sourceFile: string; 13 | begin: number; 14 | end: number; 15 | } 16 | 17 | export interface GeneratedCodeInfo { 18 | annotation?: _google_protobuf_GeneratedCodeInfo_Annotation[]; 19 | } 20 | 21 | export interface GeneratedCodeInfo__Output { 22 | annotation: _google_protobuf_GeneratedCodeInfo_Annotation__Output[]; 23 | } 24 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/MessageOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | 8 | export interface MessageOptions { 9 | messageSetWireFormat?: boolean; 10 | noStandardDescriptorAccessor?: boolean; 11 | deprecated?: boolean; 12 | mapEntry?: boolean; 13 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 14 | } 15 | 16 | export interface MessageOptions__Output { 17 | messageSetWireFormat: boolean; 18 | noStandardDescriptorAccessor: boolean; 19 | deprecated: boolean; 20 | mapEntry: boolean; 21 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 22 | } 23 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/MethodDescriptorProto.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | MethodOptions as _google_protobuf_MethodOptions, 5 | MethodOptions__Output as _google_protobuf_MethodOptions__Output, 6 | } from '../../google/protobuf/MethodOptions'; 7 | 8 | export interface MethodDescriptorProto { 9 | name?: string; 10 | inputType?: string; 11 | outputType?: string; 12 | options?: _google_protobuf_MethodOptions | null; 13 | clientStreaming?: boolean; 14 | serverStreaming?: boolean; 15 | } 16 | 17 | export interface MethodDescriptorProto__Output { 18 | name: string; 19 | inputType: string; 20 | outputType: string; 21 | options: _google_protobuf_MethodOptions__Output | null; 22 | clientStreaming: boolean; 23 | serverStreaming: boolean; 24 | } 25 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/MethodOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | import type { 8 | OperationInfo as _google_longrunning_OperationInfo, 9 | OperationInfo__Output as _google_longrunning_OperationInfo__Output, 10 | } from '../../google/longrunning/OperationInfo'; 11 | import type { 12 | HttpRule as _google_api_HttpRule, 13 | HttpRule__Output as _google_api_HttpRule__Output, 14 | } from '../../google/api/HttpRule'; 15 | 16 | export interface MethodOptions { 17 | deprecated?: boolean; 18 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 19 | '.google.longrunning.operationInfo'?: _google_longrunning_OperationInfo | null; 20 | '.google.api.methodSignature'?: string[]; 21 | '.google.api.http'?: _google_api_HttpRule | null; 22 | } 23 | 24 | export interface MethodOptions__Output { 25 | deprecated: boolean; 26 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 27 | '.google.longrunning.operationInfo': _google_longrunning_OperationInfo__Output | null; 28 | '.google.api.methodSignature': string[]; 29 | '.google.api.http': _google_api_HttpRule__Output | null; 30 | } 31 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/OneofDescriptorProto.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | OneofOptions as _google_protobuf_OneofOptions, 5 | OneofOptions__Output as _google_protobuf_OneofOptions__Output, 6 | } from '../../google/protobuf/OneofOptions'; 7 | 8 | export interface OneofDescriptorProto { 9 | name?: string; 10 | options?: _google_protobuf_OneofOptions | null; 11 | } 12 | 13 | export interface OneofDescriptorProto__Output { 14 | name: string; 15 | options: _google_protobuf_OneofOptions__Output | null; 16 | } 17 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/OneofOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | 8 | export interface OneofOptions { 9 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 10 | } 11 | 12 | export interface OneofOptions__Output { 13 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 14 | } 15 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/ServiceDescriptorProto.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | MethodDescriptorProto as _google_protobuf_MethodDescriptorProto, 5 | MethodDescriptorProto__Output as _google_protobuf_MethodDescriptorProto__Output, 6 | } from '../../google/protobuf/MethodDescriptorProto'; 7 | import type { 8 | ServiceOptions as _google_protobuf_ServiceOptions, 9 | ServiceOptions__Output as _google_protobuf_ServiceOptions__Output, 10 | } from '../../google/protobuf/ServiceOptions'; 11 | 12 | export interface ServiceDescriptorProto { 13 | name?: string; 14 | method?: _google_protobuf_MethodDescriptorProto[]; 15 | options?: _google_protobuf_ServiceOptions | null; 16 | } 17 | 18 | export interface ServiceDescriptorProto__Output { 19 | name: string; 20 | method: _google_protobuf_MethodDescriptorProto__Output[]; 21 | options: _google_protobuf_ServiceOptions__Output | null; 22 | } 23 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/ServiceOptions.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { 4 | UninterpretedOption as _google_protobuf_UninterpretedOption, 5 | UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output, 6 | } from '../../google/protobuf/UninterpretedOption'; 7 | 8 | export interface ServiceOptions { 9 | deprecated?: boolean; 10 | uninterpretedOption?: _google_protobuf_UninterpretedOption[]; 11 | '.google.api.defaultHost'?: string; 12 | '.google.api.oauthScopes'?: string; 13 | } 14 | 15 | export interface ServiceOptions__Output { 16 | deprecated: boolean; 17 | uninterpretedOption: _google_protobuf_UninterpretedOption__Output[]; 18 | '.google.api.defaultHost': string; 19 | '.google.api.oauthScopes': string; 20 | } 21 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/SourceCodeInfo.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | export interface _google_protobuf_SourceCodeInfo_Location { 4 | path?: number[]; 5 | span?: number[]; 6 | leadingComments?: string; 7 | trailingComments?: string; 8 | leadingDetachedComments?: string[]; 9 | } 10 | 11 | export interface _google_protobuf_SourceCodeInfo_Location__Output { 12 | path: number[]; 13 | span: number[]; 14 | leadingComments: string; 15 | trailingComments: string; 16 | leadingDetachedComments: string[]; 17 | } 18 | 19 | export interface SourceCodeInfo { 20 | location?: _google_protobuf_SourceCodeInfo_Location[]; 21 | } 22 | 23 | export interface SourceCodeInfo__Output { 24 | location: _google_protobuf_SourceCodeInfo_Location__Output[]; 25 | } 26 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/Timestamp.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { Long } from '@grpc/proto-loader'; 4 | 5 | export interface Timestamp { 6 | seconds?: number | string | Long; 7 | nanos?: number; 8 | } 9 | 10 | export interface Timestamp__Output { 11 | seconds: Long; 12 | nanos: number; 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/google/protobuf/UninterpretedOption.ts: -------------------------------------------------------------------------------- 1 | // Original file: null 2 | 3 | import type { Long } from '@grpc/proto-loader'; 4 | 5 | export interface _google_protobuf_UninterpretedOption_NamePart { 6 | namePart?: string; 7 | isExtension?: boolean; 8 | } 9 | 10 | export interface _google_protobuf_UninterpretedOption_NamePart__Output { 11 | namePart: string; 12 | isExtension: boolean; 13 | } 14 | 15 | export interface UninterpretedOption { 16 | name?: _google_protobuf_UninterpretedOption_NamePart[]; 17 | identifierValue?: string; 18 | positiveIntValue?: number | string | Long; 19 | negativeIntValue?: number | string | Long; 20 | doubleValue?: number | string; 21 | stringValue?: Buffer | Uint8Array | string; 22 | aggregateValue?: string; 23 | } 24 | 25 | export interface UninterpretedOption__Output { 26 | name: _google_protobuf_UninterpretedOption_NamePart__Output[]; 27 | identifierValue: string; 28 | positiveIntValue: Long; 29 | negativeIntValue: Long; 30 | doubleValue: number; 31 | stringValue: Buffer; 32 | aggregateValue: string; 33 | } 34 | -------------------------------------------------------------------------------- /src/proto/http.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | google: { 10 | api: { 11 | CustomHttpPattern: MessageTypeDefinition; 12 | Http: MessageTypeDefinition; 13 | HttpRule: MessageTypeDefinition; 14 | }; 15 | }; 16 | } 17 | -------------------------------------------------------------------------------- /src/proto/invocation_policy.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | blaze: { 10 | invocation_policy: { 11 | AllowValues: MessageTypeDefinition; 12 | DisallowValues: MessageTypeDefinition; 13 | FlagPolicy: MessageTypeDefinition; 14 | InvocationPolicy: MessageTypeDefinition; 15 | SetValue: MessageTypeDefinition; 16 | UseDefault: MessageTypeDefinition; 17 | }; 18 | }; 19 | } 20 | -------------------------------------------------------------------------------- /src/proto/license.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | import type { 5 | LicensesClient as _build_stack_license_v1beta1_LicensesClient, 6 | LicensesDefinition as _build_stack_license_v1beta1_LicensesDefinition, 7 | } from './build/stack/license/v1beta1/Licenses'; 8 | 9 | type SubtypeConstructor any, Subtype> = { 10 | new (...args: ConstructorParameters): Subtype; 11 | }; 12 | 13 | export interface ProtoGrpcType { 14 | build: { 15 | stack: { 16 | license: { 17 | v1beta1: { 18 | License: MessageTypeDefinition; 19 | Licenses: SubtypeConstructor< 20 | typeof grpc.Client, 21 | _build_stack_license_v1beta1_LicensesClient 22 | > & { service: _build_stack_license_v1beta1_LicensesDefinition }; 23 | RenewLicenseRequest: MessageTypeDefinition; 24 | RenewLicenseResponse: MessageTypeDefinition; 25 | }; 26 | }; 27 | }; 28 | }; 29 | google: { 30 | protobuf: { 31 | Timestamp: MessageTypeDefinition; 32 | }; 33 | }; 34 | } 35 | -------------------------------------------------------------------------------- /src/proto/livegrep.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | import type { 5 | CodeSearchClient as _livegrep_CodeSearchClient, 6 | CodeSearchDefinition as _livegrep_CodeSearchDefinition, 7 | } from './livegrep/CodeSearch'; 8 | 9 | type SubtypeConstructor any, Subtype> = { 10 | new (...args: ConstructorParameters): Subtype; 11 | }; 12 | 13 | export interface ProtoGrpcType { 14 | livegrep: { 15 | Bounds: MessageTypeDefinition; 16 | CodeSearch: SubtypeConstructor & { 17 | service: _livegrep_CodeSearchDefinition; 18 | }; 19 | CodeSearchResult: MessageTypeDefinition; 20 | Empty: MessageTypeDefinition; 21 | FileResult: MessageTypeDefinition; 22 | IndexSpec: MessageTypeDefinition; 23 | InfoRequest: MessageTypeDefinition; 24 | Metadata: MessageTypeDefinition; 25 | PathSpec: MessageTypeDefinition; 26 | Query: MessageTypeDefinition; 27 | RepoSpec: MessageTypeDefinition; 28 | SearchResult: MessageTypeDefinition; 29 | SearchStats: MessageTypeDefinition; 30 | ServerInfo: MessageTypeDefinition; 31 | }; 32 | } 33 | -------------------------------------------------------------------------------- /src/proto/livegrep/Bounds.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | export interface Bounds { 4 | left?: number; 5 | right?: number; 6 | } 7 | 8 | export interface Bounds__Output { 9 | left: number; 10 | right: number; 11 | } 12 | -------------------------------------------------------------------------------- /src/proto/livegrep/CodeSearchResult.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { 4 | SearchStats as _livegrep_SearchStats, 5 | SearchStats__Output as _livegrep_SearchStats__Output, 6 | } from '../livegrep/SearchStats'; 7 | import type { 8 | SearchResult as _livegrep_SearchResult, 9 | SearchResult__Output as _livegrep_SearchResult__Output, 10 | } from '../livegrep/SearchResult'; 11 | import type { 12 | FileResult as _livegrep_FileResult, 13 | FileResult__Output as _livegrep_FileResult__Output, 14 | } from '../livegrep/FileResult'; 15 | import type { Long } from '@grpc/proto-loader'; 16 | 17 | export interface CodeSearchResult { 18 | stats?: _livegrep_SearchStats | null; 19 | results?: _livegrep_SearchResult[]; 20 | fileResults?: _livegrep_FileResult[]; 21 | /** 22 | * unique index identity that served this request 23 | */ 24 | indexName?: string; 25 | indexTime?: number | string | Long; 26 | } 27 | 28 | export interface CodeSearchResult__Output { 29 | stats: _livegrep_SearchStats__Output | null; 30 | results: _livegrep_SearchResult__Output[]; 31 | fileResults: _livegrep_FileResult__Output[]; 32 | /** 33 | * unique index identity that served this request 34 | */ 35 | indexName: string; 36 | indexTime: Long; 37 | } 38 | -------------------------------------------------------------------------------- /src/proto/livegrep/Empty.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | export interface Empty {} 4 | 5 | export interface Empty__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/livegrep/FileResult.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { 4 | Bounds as _livegrep_Bounds, 5 | Bounds__Output as _livegrep_Bounds__Output, 6 | } from '../livegrep/Bounds'; 7 | 8 | export interface FileResult { 9 | tree?: string; 10 | version?: string; 11 | path?: string; 12 | bounds?: _livegrep_Bounds | null; 13 | } 14 | 15 | export interface FileResult__Output { 16 | tree: string; 17 | version: string; 18 | path: string; 19 | bounds: _livegrep_Bounds__Output | null; 20 | } 21 | -------------------------------------------------------------------------------- /src/proto/livegrep/IndexSpec.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { 4 | PathSpec as _livegrep_PathSpec, 5 | PathSpec__Output as _livegrep_PathSpec__Output, 6 | } from '../livegrep/PathSpec'; 7 | import type { 8 | RepoSpec as _livegrep_RepoSpec, 9 | RepoSpec__Output as _livegrep_RepoSpec__Output, 10 | } from '../livegrep/RepoSpec'; 11 | 12 | export interface IndexSpec { 13 | name?: string; 14 | paths?: _livegrep_PathSpec[]; 15 | repos?: _livegrep_RepoSpec[]; 16 | } 17 | 18 | export interface IndexSpec__Output { 19 | name: string; 20 | paths: _livegrep_PathSpec__Output[]; 21 | repos: _livegrep_RepoSpec__Output[]; 22 | } 23 | -------------------------------------------------------------------------------- /src/proto/livegrep/InfoRequest.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | export interface InfoRequest {} 4 | 5 | export interface InfoRequest__Output {} 6 | -------------------------------------------------------------------------------- /src/proto/livegrep/Metadata.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | export interface Metadata { 4 | urlPattern?: string; 5 | remote?: string; 6 | github?: string; 7 | labels?: string[]; 8 | } 9 | 10 | export interface Metadata__Output { 11 | urlPattern: string; 12 | remote: string; 13 | github: string; 14 | labels: string[]; 15 | } 16 | -------------------------------------------------------------------------------- /src/proto/livegrep/PathSpec.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { 4 | Metadata as _livegrep_Metadata, 5 | Metadata__Output as _livegrep_Metadata__Output, 6 | } from '../livegrep/Metadata'; 7 | 8 | export interface PathSpec { 9 | path?: string; 10 | name?: string; 11 | orderedContents?: string; 12 | metadata?: _livegrep_Metadata | null; 13 | } 14 | 15 | export interface PathSpec__Output { 16 | path: string; 17 | name: string; 18 | orderedContents: string; 19 | metadata: _livegrep_Metadata__Output | null; 20 | } 21 | -------------------------------------------------------------------------------- /src/proto/livegrep/Query.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | export interface Query { 4 | line?: string; 5 | file?: string; 6 | repo?: string; 7 | tags?: string; 8 | foldCase?: boolean; 9 | notFile?: string; 10 | notRepo?: string; 11 | notTags?: string; 12 | maxMatches?: number; 13 | filenameOnly?: boolean; 14 | contextLines?: number; 15 | } 16 | 17 | export interface Query__Output { 18 | line: string; 19 | file: string; 20 | repo: string; 21 | tags: string; 22 | foldCase: boolean; 23 | notFile: string; 24 | notRepo: string; 25 | notTags: string; 26 | maxMatches: number; 27 | filenameOnly: boolean; 28 | contextLines: number; 29 | } 30 | -------------------------------------------------------------------------------- /src/proto/livegrep/RepoSpec.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { 4 | Metadata as _livegrep_Metadata, 5 | Metadata__Output as _livegrep_Metadata__Output, 6 | } from '../livegrep/Metadata'; 7 | 8 | export interface RepoSpec { 9 | path?: string; 10 | name?: string; 11 | revisions?: string[]; 12 | metadata?: _livegrep_Metadata | null; 13 | walkSubmodules?: boolean; 14 | } 15 | 16 | export interface RepoSpec__Output { 17 | path: string; 18 | name: string; 19 | revisions: string[]; 20 | metadata: _livegrep_Metadata__Output | null; 21 | walkSubmodules: boolean; 22 | } 23 | -------------------------------------------------------------------------------- /src/proto/livegrep/SearchResult.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { 4 | Bounds as _livegrep_Bounds, 5 | Bounds__Output as _livegrep_Bounds__Output, 6 | } from '../livegrep/Bounds'; 7 | import type { Long } from '@grpc/proto-loader'; 8 | 9 | export interface SearchResult { 10 | tree?: string; 11 | version?: string; 12 | path?: string; 13 | lineNumber?: number | string | Long; 14 | contextBefore?: string[]; 15 | contextAfter?: string[]; 16 | bounds?: _livegrep_Bounds | null; 17 | line?: string; 18 | } 19 | 20 | export interface SearchResult__Output { 21 | tree: string; 22 | version: string; 23 | path: string; 24 | lineNumber: Long; 25 | contextBefore: string[]; 26 | contextAfter: string[]; 27 | bounds: _livegrep_Bounds__Output | null; 28 | line: string; 29 | } 30 | -------------------------------------------------------------------------------- /src/proto/livegrep/SearchStats.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { Long } from '@grpc/proto-loader'; 4 | 5 | // Original file: proto/livegrep.proto 6 | 7 | export enum _livegrep_SearchStats_ExitReason { 8 | NONE = 0, 9 | TIMEOUT = 1, 10 | MATCH_LIMIT = 2, 11 | } 12 | 13 | export interface SearchStats { 14 | re2Time?: number | string | Long; 15 | gitTime?: number | string | Long; 16 | sortTime?: number | string | Long; 17 | indexTime?: number | string | Long; 18 | analyzeTime?: number | string | Long; 19 | exitReason?: _livegrep_SearchStats_ExitReason | keyof typeof _livegrep_SearchStats_ExitReason; 20 | totalTime?: number | string | Long; 21 | } 22 | 23 | export interface SearchStats__Output { 24 | re2Time: Long; 25 | gitTime: Long; 26 | sortTime: Long; 27 | indexTime: Long; 28 | analyzeTime: Long; 29 | exitReason: _livegrep_SearchStats_ExitReason; 30 | totalTime: Long; 31 | } 32 | -------------------------------------------------------------------------------- /src/proto/livegrep/ServerInfo.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/livegrep.proto 2 | 3 | import type { 4 | Metadata as _livegrep_Metadata, 5 | Metadata__Output as _livegrep_Metadata__Output, 6 | } from '../livegrep/Metadata'; 7 | import type { Long } from '@grpc/proto-loader'; 8 | 9 | export interface _livegrep_ServerInfo_Tree { 10 | name?: string; 11 | version?: string; 12 | metadata?: _livegrep_Metadata | null; 13 | } 14 | 15 | export interface _livegrep_ServerInfo_Tree__Output { 16 | name: string; 17 | version: string; 18 | metadata: _livegrep_Metadata__Output | null; 19 | } 20 | 21 | export interface ServerInfo { 22 | name?: string; 23 | trees?: _livegrep_ServerInfo_Tree[]; 24 | hasTags?: boolean; 25 | /** 26 | * unix timestamp (seconds) 27 | */ 28 | indexTime?: number | string | Long; 29 | } 30 | 31 | export interface ServerInfo__Output { 32 | name: string; 33 | trees: _livegrep_ServerInfo_Tree__Output[]; 34 | hasTags: boolean; 35 | /** 36 | * unix timestamp (seconds) 37 | */ 38 | indexTime: Long; 39 | } 40 | -------------------------------------------------------------------------------- /src/proto/option_filters.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { EnumTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | options: { 10 | OptionEffectTag: EnumTypeDefinition; 11 | OptionMetadataTag: EnumTypeDefinition; 12 | }; 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/options/OptionEffectTag.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/option_filters.proto 2 | 3 | /** 4 | * Docs in java enum. 5 | */ 6 | export enum OptionEffectTag { 7 | /** 8 | * This option's effect or intent is unknown. 9 | */ 10 | UNKNOWN = 0, 11 | /** 12 | * This flag has literally no effect. 13 | */ 14 | NO_OP = 1, 15 | LOSES_INCREMENTAL_STATE = 2, 16 | CHANGES_INPUTS = 3, 17 | AFFECTS_OUTPUTS = 4, 18 | BUILD_FILE_SEMANTICS = 5, 19 | BAZEL_INTERNAL_CONFIGURATION = 6, 20 | LOADING_AND_ANALYSIS = 7, 21 | EXECUTION = 8, 22 | HOST_MACHINE_RESOURCE_OPTIMIZATIONS = 9, 23 | EAGERNESS_TO_EXIT = 10, 24 | BAZEL_MONITORING = 11, 25 | TERMINAL_OUTPUT = 12, 26 | ACTION_COMMAND_LINES = 13, 27 | TEST_RUNNER = 14, 28 | } 29 | -------------------------------------------------------------------------------- /src/proto/options/OptionMetadataTag.ts: -------------------------------------------------------------------------------- 1 | // Original file: proto/option_filters.proto 2 | 3 | /** 4 | * Docs in java enum. 5 | */ 6 | export enum OptionMetadataTag { 7 | EXPERIMENTAL = 0, 8 | INCOMPATIBLE_CHANGE = 1, 9 | DEPRECATED = 2, 10 | HIDDEN = 3, 11 | INTERNAL = 4, 12 | TRIGGERED_BY_ALL_INCOMPATIBLE_CHANGES = 5, 13 | } 14 | -------------------------------------------------------------------------------- /src/proto/semver.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | build: { 10 | bazel: { 11 | semver: { 12 | SemVer: MessageTypeDefinition; 13 | }; 14 | }; 15 | }; 16 | } 17 | -------------------------------------------------------------------------------- /src/proto/status.ts: -------------------------------------------------------------------------------- 1 | import type * as grpc from '@grpc/grpc-js'; 2 | import type { MessageTypeDefinition } from '@grpc/proto-loader'; 3 | 4 | type SubtypeConstructor any, Subtype> = { 5 | new (...args: ConstructorParameters): Subtype; 6 | }; 7 | 8 | export interface ProtoGrpcType { 9 | google: { 10 | protobuf: { 11 | Any: MessageTypeDefinition; 12 | }; 13 | rpc: { 14 | Status: MessageTypeDefinition; 15 | }; 16 | }; 17 | } 18 | -------------------------------------------------------------------------------- /src/reconfigurable.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | 3 | export abstract class Reconfigurable implements vscode.Disposable { 4 | protected disposables: vscode.Disposable[] = []; 5 | protected onDidConfigurationChange: vscode.EventEmitter = new vscode.EventEmitter(); 6 | 7 | constructor(section: string) { 8 | const reconfigure = async (section: string) => { 9 | try { 10 | // vscode.window.showInformationMessage(`Reconfiguring ${section}`); 11 | const cfg = await this.configure(vscode.workspace.getConfiguration(section)); 12 | this.onDidConfigurationChange.fire(cfg); 13 | } catch (e) { 14 | vscode.window.showWarningMessage(`could not reconfigure "${section}": ${e.message}`); 15 | } 16 | }; 17 | this.add( 18 | vscode.workspace.onDidChangeConfiguration(async e => { 19 | if (e.affectsConfiguration(section)) { 20 | reconfigure(section); 21 | } 22 | }) 23 | ); 24 | reconfigure(section); 25 | } 26 | 27 | /** 28 | * Configure 29 | * @param config The workspace configuration to configure from. 30 | */ 31 | protected abstract configure(config: vscode.WorkspaceConfiguration): Promise; 32 | 33 | /** 34 | * Adds the given child disposable to the feature. 35 | * @param disposable 36 | * @returns 37 | */ 38 | protected add(disposable: D): D { 39 | this.disposables.push(disposable); 40 | return disposable; 41 | } 42 | 43 | /** 44 | * @override 45 | */ 46 | public dispose() { 47 | for (const disposable of this.disposables) { 48 | disposable.dispose(); 49 | } 50 | this.disposables.length = 0; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /src/test/fixtures/bsv.bazeldoc/BUILD.bazel: -------------------------------------------------------------------------------- 1 | # should hover 2 | http_archive( 3 | name = "foo", 4 | ) 5 | 6 | # should not hover over this 7 | repr(value = http_archive) -------------------------------------------------------------------------------- /src/test/fixtures/bsv.buildifier/preformatted.bzl: -------------------------------------------------------------------------------- 1 | """ 2 | A preformatted bzl file that should produce no edits on formatting. 3 | """ 4 | 5 | load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") 6 | 7 | def foo(): 8 | http_archive( 9 | name = "foo", 10 | ) 11 | -------------------------------------------------------------------------------- /src/test/fixtures/bsv.buildifier/unformatted.bzl: -------------------------------------------------------------------------------- 1 | def foo(): 2 | 3 | http_archive( 4 | name = "foo", 5 | ) 6 | -------------------------------------------------------------------------------- /src/test/memento.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | 3 | /** 4 | * A memento represents a storage utility. It can store and retrieve 5 | * values. 6 | */ 7 | export class FakeMemento implements vscode.Memento { 8 | private store: Map = new Map(); 9 | 10 | /** 11 | * Return a value. 12 | * 13 | * @param key A string. 14 | * @param defaultValue A value that should be returned when there is no 15 | * value (`undefined`) with the given key. 16 | * @return The stored value or the defaultValue. 17 | */ 18 | get(key: string, defaultValue?: T): T { 19 | if (this.store.get(key) !== undefined) { 20 | return this.store.get(key); 21 | } 22 | return defaultValue!; 23 | } 24 | 25 | /** 26 | * Store a value. The value must be JSON-stringifyable. 27 | * 28 | * @param key A string. 29 | * @param value A value. MUST not contain cyclic references. 30 | */ 31 | async update(key: string, value: any): Promise { 32 | this.store.set(key, value); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/test/runTest.ts: -------------------------------------------------------------------------------- 1 | import * as path from 'path'; 2 | 3 | import { runTests } from 'vscode-test'; 4 | 5 | async function main() { 6 | try { 7 | // The folder containing the Extension Manifest package.json 8 | // Passed to `--extensionDevelopmentPath` 9 | const extensionDevelopmentPath = path.resolve(__dirname, '../../'); 10 | 11 | // The path to test runner 12 | // Passed to --extensionTestsPath 13 | const extensionTestsPath = path.resolve(__dirname, './suite/index'); 14 | 15 | // Download VS Code, unzip it and run the integration test 16 | await runTests({ 17 | extensionDevelopmentPath, 18 | extensionTestsPath, 19 | launchArgs: [ 20 | '--disable-gpu', 21 | '--disable-workspace-trust', 22 | '--disable-extensions', // disable all other extensions 23 | ] 24 | }); 25 | } catch (err) { 26 | console.error('Failed to run tests'); 27 | process.exit(1); 28 | } 29 | } 30 | 31 | main(); 32 | -------------------------------------------------------------------------------- /src/test/suite/extension.test.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | 3 | suite('Extension Test Suite', () => { 4 | vscode.window.showInformationMessage('Start all tests.'); 5 | }); 6 | -------------------------------------------------------------------------------- /src/test/suite/index.ts: -------------------------------------------------------------------------------- 1 | import * as path from 'path'; 2 | import * as Mocha from 'mocha'; 3 | import * as glob from 'glob'; 4 | 5 | export function run(): Promise { 6 | // Create the mocha test 7 | const mocha = new Mocha({ 8 | ui: 'tdd', 9 | color: true, 10 | }); 11 | 12 | const testsRoot = path.resolve(__dirname, '..'); 13 | 14 | return new Promise((c, e) => { 15 | glob('**/**.test.js', { cwd: testsRoot }, (err, files) => { 16 | if (err) { 17 | return e(err); 18 | } 19 | 20 | // Add files to the test suite 21 | files.forEach(f => mocha.addFile(path.resolve(testsRoot, f))); 22 | 23 | try { 24 | // Run the mocha test 25 | mocha.run(failures => { 26 | if (failures > 0) { 27 | e(new Error(`${failures} tests failed.`)); 28 | } else { 29 | c(); 30 | } 31 | }); 32 | } catch (err) { 33 | console.error(err); 34 | e(err); 35 | } 36 | }); 37 | }); 38 | } 39 | -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/IFileDownloader.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | import { ExtensionContext, CancellationToken, Uri } from 'vscode'; 5 | 6 | export interface FileDownloadSettings { 7 | timeoutInMs?: number; 8 | retries?: number; 9 | retryDelayInMs?: number; 10 | shouldUnzip?: boolean; 11 | } 12 | 13 | export interface IFileDownloader { 14 | downloadFile( 15 | url: Uri, 16 | filename: string, 17 | context: ExtensionContext, 18 | cancellationToken?: CancellationToken, 19 | onDownloadProgressChange?: (downloadedBytes: number, totalBytes: number | undefined) => void, 20 | settings?: FileDownloadSettings 21 | ): Promise; 22 | 23 | listDownloadedItems(context: ExtensionContext): Promise; 24 | 25 | getItem(filename: string, context: ExtensionContext): Promise; 26 | 27 | tryGetItem(filename: string, context: ExtensionContext): Promise; 28 | 29 | deleteItem(filename: string, context: ExtensionContext): Promise; 30 | 31 | deleteAllItems(context: ExtensionContext): Promise; 32 | } 33 | -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/logging/ConsoleLogger.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | import ILogger from './ILogger'; 5 | 6 | export default class ConsoleLogger implements ILogger { 7 | 8 | public constructor(private console: Console) { 9 | } 10 | 11 | public log(message: string): void { 12 | this.console.log(message); 13 | } 14 | 15 | public warn(message: string): void { 16 | this.console.warn(message); 17 | } 18 | 19 | public error(message: string): void { 20 | this.console.error(message); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/logging/ILogger.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | export default interface ILogger { 5 | log(message: string): void; 6 | warn(message: string): void; 7 | error(message: string): void; 8 | } 9 | -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/logging/OutputLogger.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | import { ExtensionContext, OutputChannel, window } from 'vscode'; 5 | import ILogger from './ILogger'; 6 | 7 | export default class OutputLogger implements ILogger { 8 | private readonly _outputChannel: OutputChannel; 9 | 10 | public constructor(extensionName: string, context: ExtensionContext) { 11 | this._outputChannel = window.createOutputChannel(extensionName); 12 | context.subscriptions.push(this._outputChannel); 13 | } 14 | 15 | public log(message: string): void { 16 | this._outputChannel.appendLine(message); 17 | } 18 | 19 | public warn(message: string): void { 20 | this.log(`Warning: ${message}`); 21 | } 22 | 23 | public error(message: string): void { 24 | this.log(`ERROR: ${message}`); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/networking/IHttpRequestHandler.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | import { Readable } from 'stream'; 5 | import { CancellationToken } from 'vscode'; 6 | 7 | export default interface IHttpRequestHandler { 8 | get( 9 | url: string, 10 | timeoutInMs: number, 11 | retries: number, 12 | retryDelayInMs: number, 13 | cancellationToken?: CancellationToken, 14 | onDownloadProgressChange?: (downloadedBytes: number, totalBytes: number) => void 15 | ): Promise; 16 | } 17 | -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/utility/Errors.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | // see https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-2.html#support-for-newtarget 5 | 6 | export class DownloadCanceledError extends Error { 7 | public constructor() { 8 | super('Download canceled.'); 9 | Object.setPrototypeOf(this, new.target.prototype); 10 | this.name = DownloadCanceledError.name; 11 | } 12 | } 13 | 14 | export class FileNotFoundError extends Error { 15 | public constructor(path: string) { 16 | super(`File not found at path ${path}.`); 17 | Object.setPrototypeOf(this, new.target.prototype); 18 | this.name = FileNotFoundError.name; 19 | } 20 | } 21 | 22 | export class RetriesExceededError extends Error { 23 | public constructor(error: Error, operationName: string) { 24 | super(`Maximum number of retries exceeded. The operation '${operationName}' failed with error: ${error.message}. Technical details: ${JSON.stringify(error)}`); 25 | Object.setPrototypeOf(this, new.target.prototype); 26 | this.name = `${RetriesExceededError.name} for operation '${operationName}'`; 27 | } 28 | } 29 | 30 | export class ErrorUtils { 31 | public static isErrnoException(object: unknown): object is NodeJS.ErrnoException { 32 | return Object.prototype.hasOwnProperty.call(object, 'code') 33 | || Object.prototype.hasOwnProperty.call(object, 'errno'); 34 | } 35 | } -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/utility/FileSystem.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | import { promisify } from 'util'; 5 | import * as rimraf from 'rimraf'; 6 | 7 | export const rimrafAsync = promisify(rimraf); -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/utility/RetryUtility.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | import { RetriesExceededError } from './Errors'; 5 | 6 | export class RetryUtility { 7 | public static async exponentialRetryAsync( 8 | requestFn: () => Promise, 9 | operationName: string, 10 | retries: number, 11 | initialDelayInMs: number, 12 | errorHandlerFn?: (error: Error) => void 13 | ): Promise { 14 | try { 15 | return await requestFn(); 16 | } 17 | catch (error) { 18 | if (error instanceof Error) { 19 | if (retries === 0) { 20 | throw new RetriesExceededError(error, operationName); 21 | } 22 | 23 | if (errorHandlerFn) { 24 | errorHandlerFn(error); 25 | } 26 | } 27 | await new Promise((resolve): void => { 28 | setTimeout(resolve, initialDelayInMs); 29 | }); 30 | return this.exponentialRetryAsync(requestFn, operationName, retries - 1, initialDelayInMs * 2, errorHandlerFn); 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /src/vendor/microsoft/vscode-file-downloader/utility/Stream.ts: -------------------------------------------------------------------------------- 1 | // Copyright (c) Microsoft Corporation. 2 | // Licensed under the MIT License. 3 | 4 | import { promisify } from 'util'; 5 | import { pipeline, finished } from 'stream'; 6 | 7 | type AnyStream = NodeJS.ReadableStream | NodeJS.WritableStream | NodeJS.ReadWriteStream; 8 | 9 | export const finishedAsync = promisify(finished); 10 | export let pipelineAsync = promisify(pipeline); 11 | 12 | // Workaround https://github.com/nodejs/node/issues/40191 13 | // todo: remove it when fix is released in 16.x and in AppEngine 16.x 14 | if (process.version > 'v16.13') { 15 | // eslint-disable-next-line @typescript-eslint/no-var-requires 16 | const { pipeline } = require('stream/promises'); 17 | pipelineAsync = ((streams: AnyStream[]) => pipeline(...streams)) as any; 18 | } -------------------------------------------------------------------------------- /stackb-full.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/stackb/bazel-stack-vscode/a7812c1931e5b885600512df071b0027037987b4/stackb-full.png -------------------------------------------------------------------------------- /syntaxes/bazel.configuration.json: -------------------------------------------------------------------------------- 1 | { 2 | "comments": { 3 | "lineComment": "#" 4 | }, 5 | "brackets": [ 6 | ["{", "}"], 7 | ["[", "]"], 8 | ["(", ")"] 9 | ], 10 | "autoClosingPairs": [ 11 | ["{", "}"], 12 | ["[", "]"], 13 | ["(", ")"], 14 | { 15 | "open": "\"", 16 | "close": "\"", 17 | "notIn": ["string", "comment"] 18 | }, 19 | { 20 | "open": "'", 21 | "close": "'", 22 | "notIn": ["string", "comment"] 23 | } 24 | ], 25 | "surroundingPairs": [ 26 | ["{", "}"], 27 | ["[", "]"], 28 | ["(", ")"], 29 | ["\"", "\""], 30 | ["'", "'"] 31 | ] 32 | } 33 | -------------------------------------------------------------------------------- /syntaxes/bazel.tmLanguage.license: -------------------------------------------------------------------------------- 1 | bazel.tmLanguage.json is derived from MagicPython.tmLanguage.json, 2 | which can be found at https://github.com/MagicStack/MagicPython. 3 | 4 | --- 5 | 6 | The MIT License 7 | 8 | Copyright (c) 2015 MagicStack Inc. http://magic.io 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in 18 | all copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 26 | THE SOFTWARE. 27 | -------------------------------------------------------------------------------- /syntaxes/bazelrc.configuration.json: -------------------------------------------------------------------------------- 1 | { 2 | "comments": { 3 | "lineComment": "#" 4 | }, 5 | "autoClosingPairs": [ 6 | { 7 | "open": "\"", 8 | "close": "\"", 9 | "notIn": ["string", "comment"] 10 | }, 11 | { 12 | "open": "'", 13 | "close": "'", 14 | "notIn": ["string", "comment"] 15 | } 16 | ], 17 | "surroundingPairs": [ 18 | ["\"", "\""], 19 | ["'", "'"] 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /syntaxes/starlark.configuration.json: -------------------------------------------------------------------------------- 1 | { 2 | "comments": { 3 | "lineComment": "#" 4 | }, 5 | "brackets": [ 6 | ["{", "}"], 7 | ["[", "]"], 8 | ["(", ")"] 9 | ], 10 | "autoClosingPairs": [ 11 | ["{", "}"], 12 | ["[", "]"], 13 | ["(", ")"], 14 | { 15 | "open": "\"", 16 | "close": "\"", 17 | "notIn": ["string", "comment"] 18 | }, 19 | { 20 | "open": "'", 21 | "close": "'", 22 | "notIn": ["string", "comment"] 23 | } 24 | ], 25 | "surroundingPairs": [ 26 | ["{", "}"], 27 | ["[", "]"], 28 | ["(", ")"], 29 | ["\"", "\""], 30 | ["'", "'"] 31 | ] 32 | } 33 | -------------------------------------------------------------------------------- /syntaxes/starlark.tmLanguage.license: -------------------------------------------------------------------------------- 1 | starlark.tmLanguage.json is derived from MagicPython.tmLanguage.json, 2 | which can be found at https://github.com/MagicStack/MagicPython. 3 | 4 | --- 5 | 6 | The MIT License 7 | 8 | Copyright (c) 2015 MagicStack Inc. http://magic.io 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in 18 | all copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 26 | THE SOFTWARE. 27 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "skipLibCheck": true, 5 | "target": "es6", 6 | "outDir": "out", 7 | "lib": [ 8 | "es6" 9 | ], 10 | "sourceMap": true, 11 | "rootDir": "src", 12 | "strict": true /* enable all strict type-checking options */ 13 | }, 14 | "exclude": [ 15 | "node_modules", 16 | ".vscode-test" 17 | ] 18 | } -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- 1 | //@ts-check 2 | 3 | 'use strict'; 4 | 5 | const path = require('path'); 6 | 7 | /**@type {import('webpack').Configuration}*/ 8 | const config = { 9 | target: 'node', 10 | 11 | entry: './src/extension.ts', 12 | output: { 13 | path: path.resolve(__dirname, 'out'), 14 | filename: 'extension.js', 15 | libraryTarget: 'commonjs2', 16 | devtoolModuleFilenameTemplate: '../[resource-path]' 17 | }, 18 | devtool: 'source-map', 19 | externals: { 20 | vscode: 'commonjs vscode' 21 | }, 22 | node: { 23 | __dirname: false 24 | }, 25 | resolve: { 26 | extensions: ['.ts', '.js'] 27 | }, 28 | module: { 29 | rules: [ 30 | { 31 | test: /\.ts$/, 32 | exclude: /node_modules/, 33 | use: [ 34 | { 35 | loader: 'ts-loader' 36 | } 37 | ] 38 | } 39 | ] 40 | } 41 | }; 42 | module.exports = config; --------------------------------------------------------------------------------