in src/entityExplorer.ts [226:250]
export async function addNamespace(
apihost: string,
context: vscode.ExtensionContext
): Promise<void> {
const inputOptions = {
prompt: `Authorization KEY for ${apihost}`,
placeHolder: 'Enter authorization KEY',
password: true,
ignoreFocusOut: true,
};
const manager = new StorageManager(context.globalState);
const api_key = await vscode.window.showInputBox(inputOptions);
if (api_key === undefined) {
// it's cancelled
return;
}
if (manager.getEndpoints()[apihost].namespaces.find((ns) => ns.api_key === api_key)) {
vscode.window.showErrorMessage('Already registered namespace');
return;
}
const ns = await openwhisk({ apihost, api_key }).namespaces.list();
return manager.addNamespace(apihost, { name: ns[0], api_key });
}