Path: blob/main/extensions/copilot/src/extension/ignore/vscode-node/ignoreProvider.ts
13399 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import * as vscode from 'vscode';6import { IIgnoreService } from '../../../platform/ignore/common/ignoreService';7import { Disposable } from '../../../util/vs/base/common/lifecycle';8import { IInstantiationService } from '../../../util/vs/platform/instantiation/common/instantiation';9import { IExtensionContribution } from '../../common/contributions';1011class IgnoredFileProvider implements vscode.LanguageModelIgnoredFileProvider {12constructor(13@IIgnoreService private readonly _ignoreService: IIgnoreService,14) { }1516provideFileIgnored(uri: vscode.Uri, token: vscode.CancellationToken): vscode.ProviderResult<boolean> {17return this._ignoreService.isCopilotIgnored(uri);18}19}2021export class IgnoredFileProviderContribution extends Disposable implements IExtensionContribution {22constructor(23@IInstantiationService private readonly instantiationService: IInstantiationService,24) {25super();2627this._register(vscode.lm.registerIgnoredFileProvider(this.instantiationService.createInstance(IgnoredFileProvider)));28}29}303132