Asper Header  1.0.14
The header injector extension
Loading...
Searching...
No Matches
querier.ts
Go to the documentation of this file.
1
93import * as vscode from 'vscode';
94import { logger } from './logger';
95import { getMessage } from './messageProvider';
96
115export class Query {
122 private constructor() { }
123
125 private static _instance: Query;
126
141 public static get instance(): Query {
142 logger.debug(getMessage("inFunction", "instance", "Query"));
143 if (!this._instance) {
144 this._instance = new Query();
145 }
146 return this._instance;
147 }
148
186 public async input(promptText: string, options?: vscode.InputBoxOptions): Promise<string | undefined> {
187 logger.debug(getMessage("inFunction", "input", "Query"));
188 try {
189 const result = await vscode.window.showInputBox({
190 prompt: promptText,
191 ...options
192 });
193 return result;
194 } catch (err) {
195 logger.error(getMessage("inputboxError", promptText, err));
196 return undefined;
197 }
198 }
199
243 public async quickPick(items: string[], placeholder: string): Promise<string | undefined> {
244 logger.debug(getMessage("inFunction", "quickPick", "Query"));
245 try {
246 const result = await vscode.window.showQuickPick(items, {
247 placeHolder: placeholder
248 });
249 return result;
250 } catch (err) {
251 logger.error(getMessage("quickPickError", err));
252 return undefined;
253 }
254 }
255
302 public async confirm(promptText: string): Promise<boolean> {
303 logger.debug(getMessage("inFunction", "confirm", "Query"));
304 const yes: string = getMessage("quickPickYes");
305 const no: string = getMessage("quickPickNo");
306 const selection = await vscode.window.showQuickPick([yes, no], { placeHolder: promptText });
307 return selection === yes;
308 }
309}
310
345export const query = Query.instance;
Singleton user interaction manager for VS Code UI components.
Definition querier.ts:115
export const logger
Singleton logger instance providing unified logging interface for the entire extension.
Definition logger.ts:910
const instance
Singleton logger instance for application-wide use.
Definition logger.ts:870
export const getMessage
Exported function for direct message retrieval.
import *as vscode from vscode
Definition querier.ts:93
export const query
Convenience singleton export for direct access to Query functionality @export Primary interface for u...
Definition querier.ts:345