MCPcopy Create free account
hub / github.com/NVIDIA/OpenShell / open_update_provider_form

Method open_update_provider_form

crates/openshell-tui/src/app.rs:2402–2436  ·  view source on GitHub ↗
(&mut self)

Source from the content-addressed store, hash-verified

2400 // ------------------------------------------------------------------
2401
2402 fn open_update_provider_form(&mut self) {
2403 let name = match self.provider_names.get(self.provider_selected) {
2404 Some(n) => n.clone(),
2405 None => return,
2406 };
2407 let ptype = self
2408 .provider_types
2409 .get(self.provider_selected)
2410 .cloned()
2411 .unwrap_or_default();
2412 let cred_key = self
2413 .provider_cred_keys
2414 .get(self.provider_selected)
2415 .cloned()
2416 .unwrap_or_default();
2417
2418 // If we don't know the credential key, derive from registry.
2419 let key = if cred_key.is_empty() {
2420 let registry = openshell_providers::ProviderRegistry::new();
2421 registry
2422 .credential_env_vars(&ptype)
2423 .first()
2424 .map_or(String::new(), ToString::to_string)
2425 } else {
2426 cred_key
2427 };
2428
2429 self.update_provider_form = Some(UpdateProviderForm {
2430 provider_name: name,
2431 provider_type: ptype,
2432 credential_key: key,
2433 new_value: String::new(),
2434 status: None,
2435 });
2436 }
2437
2438 fn handle_update_provider_key(&mut self, key: KeyEvent) {
2439 let Some(form) = self.update_provider_form.as_mut() else {

Callers 1

handle_providers_keyMethod · 0.80

Calls 3

getMethod · 0.45
is_emptyMethod · 0.45
credential_env_varsMethod · 0.45

Tested by

no test coverage detected