uninstallPlugin method
Future<PluginCliResult>
uninstallPlugin(
- String plugin, [
- PluginScope scope = PluginScope.user,
- bool keepData = false
CLI: Uninstall a plugin.
Implementation
Future<PluginCliResult> uninstallPlugin(
String plugin, [
PluginScope scope = PluginScope.user,
bool keepData = false,
]) async {
try {
final result = await operations.uninstallPlugin(plugin, scope, !keepData);
if (!result.success) {
return PluginCliResult(success: false, message: result.message);
}
final id = parsePluginIdentifier(result.pluginId ?? plugin);
logEvent('tengu_plugin_uninstalled_cli', {
...buildPluginTelemetryFields(
id.name,
id.marketplace,
getManagedPluginNames(),
).toMap(),
'scope': (result.scope ?? scope).name,
});
return PluginCliResult(success: true, message: result.message);
} catch (e) {
_handleError(e, 'uninstall', plugin);
return PluginCliResult(success: false, message: e.toString());
}
}