Files
github-local-actions/src/secretManager.ts
Sanjula Ganepola af0b2edb4a Switch to use secret manager for secrets
Signed-off-by: Sanjula Ganepola <sanjulagane@gmail.com>
2024-11-18 18:23:07 -05:00

23 lines
1.0 KiB
TypeScript

import { ExtensionContext, WorkspaceFolder } from "vscode";
import { StorageKey } from "./storageManager";
export class SecretManager {
private context: ExtensionContext;
private extensionKey: string = 'githubLocalActions';
constructor(context: ExtensionContext) {
this.context = context;
}
async get(workspaceFolder: WorkspaceFolder, storageKey: StorageKey, key: string): Promise<string | undefined> {
return await this.context.secrets.get(`${this.extensionKey}.${workspaceFolder.uri.fsPath}.${storageKey}.${key}`);
}
async store(workspaceFolder: WorkspaceFolder, storageKey: StorageKey, key: string, value: string): Promise<void> {
await this.context.secrets.store(`${this.extensionKey}.${workspaceFolder.uri.fsPath}.${storageKey}.${key}`, value);
}
async delete(workspaceFolder: WorkspaceFolder, storageKey: StorageKey, key: string): Promise<void> {
return await this.context.secrets.delete(`${this.extensionKey}.${workspaceFolder.uri.fsPath}.${storageKey}.${key}`);
}
}