INNER CODE UNIT · TypeScript
DependencyLensProvider
microsoft/PSRule · src/vscode-ps-rule/dependencyLens.ts:33
export class DependencyLensProvider implements CodeLensProvider, Disposable {
// Fields
private readonly context: IContext;
private codeLenses: CodeLens[] = [];
private regexModuleBlock: RegExp;
private regexModuleName: RegExp;
private _registration: Disposable | undefined;
private _onDidChangeCodeLenses: EventEmitter<void> = new EventEmitter<void>();
public readonly onDidChangeCodeLenses: Event<void> = this._onDidChangeCodeLenses.event;
constructor(logger: ILogger, extensionContext: ExtensionContext) {
this.context = { logger, extensionContext };
this.regexModuleBlock = /"modules":\s*\{([^{}]*\{[^{}]*\}[^{}]*)*\}/g;
this.regexModuleName =
/(?<name>[^"]+)":\s*{\s*"version":\s*"[^"]*"/g;
workspace.onDidChangeConfiguration((_) => {