pub struct App {Show 40 fields
pub focus: Panel,
pub theme: ThemeMode,
pub zoomed: bool,
pub shapes: Vec<Option<Shape>>,
pub user_badge: Option<Shape>,
pub error: Option<String>,
pub refresh_interval: Duration,
pub loading: bool,
pub detail: Option<Detail>,
pub confirm: Option<Confirm>,
pub flash: Option<(String, Instant)>,
pub selected: [usize; 7],
pub host: Option<String>,
pub profiles: Vec<String>,
pub profile: Option<String>,
pub picker: Option<usize>,
pub problems: Option<Problems>,
pub upcoming: Option<Upcoming>,
pub uc_path: Vec<String>,
pub preview: Option<Preview>,
pub wh_picker: Option<WhPicker>,
pub preview_warehouse: Option<(String, String)>,
pub cost: Option<CostView>,
pub sql: Option<SqlConsole>,
pub hist_search: Option<(String, usize)>,
pub run_view: Option<RunView>,
pub splash_until: Option<Instant>,
pub updated_at: [Option<Instant>; 7],
pub filters: [String; 7],
pub filter_entry: bool,
pub config: Config,
pub jump: Option<Jump>,
pub pane_order: Vec<usize>,
pub hidden: [bool; 7],
pub pane_cfg: Option<usize>,
pub help: bool,
pub help_scroll: u16,
pub sql_complete: Option<SqlComplete>,
pub secret_scope: Option<String>,
pub secret_form: Option<SecretForm>,
/* private fields */
}Fields§
§focus: Panel§theme: ThemeMode§zoomed: bool§shapes: Vec<Option<Shape>>§user_badge: Option<Shape>§error: Option<String>§refresh_interval: Duration§loading: bool§detail: Option<Detail>§confirm: Option<Confirm>§flash: Option<(String, Instant)>§selected: [usize; 7]§host: Option<String>§profiles: Vec<String>Available profiles from ~/.databrickscfg and the active one.
profile: Option<String>§picker: Option<usize>When Some, the workspace picker overlay is open at this index.
problems: Option<Problems>When Some, the problems overlay is open.
upcoming: Option<Upcoming>§uc_path: Vec<String>Current position in the Unity Catalog tree: [], [catalog] or [catalog, schema].
preview: Option<Preview>§wh_picker: Option<WhPicker>§preview_warehouse: Option<(String, String)>Session-remembered (id, name) of the warehouse used for previews.
cost: Option<CostView>§sql: Option<SqlConsole>§hist_search: Option<(String, usize)>Ctrl+R incremental search: (query, nth-newest match shown).
run_view: Option<RunView>§splash_until: Option<Instant>Splash screen deadline; None once dismissed.
updated_at: [Option<Instant>; 7]When each pane last received fresh data — drives the title flash.
filters: [String; 7]Per-pane search filter; empty string means no filter.
filter_entry: boolTrue while the user is typing a filter for the focused pane.
config: ConfigPersisted preferences (theme, warehouse per profile).
jump: Option<Jump>Ctrl+P fuzzy jump overlay.
pane_order: Vec<usize>Canonical pane indices in display order.
Hidden flag per canonical pane index.
pane_cfg: Option<usize>When Some, the pane-arrangement overlay is open at this position.
help: boolTrue while the ? help overlay is open.
help_scroll: u16Scroll offset of the help overlay.
sql_complete: Option<SqlComplete>Tab-completion popup state for the SQL prompt.
secret_scope: Option<String>Drilled-into secret scope; None = the scopes listing.
secret_form: Option<SecretForm>Create-scope / add-secret input form.
Implementations§
Source§impl App
impl App
pub fn new(refresh_secs: u64, theme: ThemeMode) -> Self
Sourcepub fn visible_panes(&self) -> Vec<usize>
pub fn visible_panes(&self) -> Vec<usize>
Canonical pane indices currently shown, in display order.
pub fn open_pane_cfg(&mut self)
pub fn pane_cfg_next(&mut self)
pub fn pane_cfg_prev(&mut self)
Sourcepub fn pane_cfg_toggle(&mut self)
pub fn pane_cfg_toggle(&mut self)
Space in the overlay: toggles visibility of the selected pane (refusing to hide the last visible one).
Sourcepub fn pane_cfg_move(&mut self, delta: i32)
pub fn pane_cfg_move(&mut self, delta: i32)
J/K in the overlay: moves the selected pane down/up in the order.
Sourcepub fn persist_theme(&mut self)
pub fn persist_theme(&mut self)
Remembers the current theme across sessions.
Sourcepub fn restore_warehouse_pref(&mut self)
pub fn restore_warehouse_pref(&mut self)
Restores the remembered warehouse for the active profile.
pub fn splash_active(&self) -> bool
pub fn dismiss_splash(&mut self)
Sourcepub fn any_fresh(&self) -> bool
pub fn any_fresh(&self) -> bool
True while any pane’s data just landed — keeps the flash decaying.
pub fn open_picker(&mut self)
pub fn picker_next(&mut self)
pub fn picker_prev(&mut self)
Sourcepub fn picker_select(&mut self) -> Option<Arc<DatabricksCli>>
pub fn picker_select(&mut self) -> Option<Arc<DatabricksCli>>
Confirms the picker selection; returns the new CLI handle to use.
pub fn open_jump(&mut self)
Sourcepub fn jump_matches(&self) -> Vec<(usize, String, String)>
pub fn jump_matches(&self) -> Vec<(usize, String, String)>
Everything loaded that matches the jump query, best first: (panel index, item name, kind/status label). Substring matches rank above in-order subsequence matches.
pub fn jump_push(&mut self, c: char)
pub fn jump_pop(&mut self)
pub fn jump_next(&mut self)
pub fn jump_prev(&mut self)
Sourcepub fn open_problems(&mut self)
pub fn open_problems(&mut self)
Collects everything unhealthy across the loaded panes — items whose status is failed, or whose most recent run failed — then scans every other configured workspace in the background.
pub fn close_problems(&mut self)
pub fn poll_problems(&mut self) -> bool
pub fn problems_next(&mut self)
pub fn problems_prev(&mut self)
Sourcepub fn problems_jump(&mut self) -> Option<Arc<DatabricksCli>>
pub fn problems_jump(&mut self) -> Option<Arc<DatabricksCli>>
Jumps focus and selection to the highlighted problem’s pane item. A problem in another workspace switches to that workspace instead; the returned CLI handle must then replace the current one.
Sourcepub fn open_upcoming(&mut self, cli: &Arc<DatabricksCli>)
pub fn open_upcoming(&mut self, cli: &Arc<DatabricksCli>)
u: what runs next — every job with a schedule or trigger,
soonest first, fetched fresh so the countdowns are current.
pub fn close_upcoming(&mut self)
pub fn poll_upcoming(&mut self) -> bool
pub fn upcoming_next(&mut self)
pub fn upcoming_prev(&mut self)
Sourcepub fn upcoming_jump(&mut self)
pub fn upcoming_jump(&mut self)
Jumps focus and selection to the highlighted job in the Jobs pane.
Sourcepub fn fetch_host(&mut self, cli: &Arc<DatabricksCli>)
pub fn fetch_host(&mut self, cli: &Arc<DatabricksCli>)
Resolves the workspace host in the background — auth describe can
take seconds when it refreshes tokens, so it must not block the loop.
pub fn poll_host(&mut self)
Sourcepub fn selection(&self, idx: usize) -> usize
pub fn selection(&self, idx: usize) -> usize
Selection index for a panel, clamped to the current list length.
pub fn select_next(&mut self)
pub fn select_prev(&mut self)
Sourcepub fn filter_start(&mut self)
pub fn filter_start(&mut self)
Opens filter entry for the focused pane, starting from scratch.
pub fn filter_push(&mut self, c: char)
pub fn filter_pop(&mut self)
Sourcepub fn filter_accept(&mut self)
pub fn filter_accept(&mut self)
Keeps the filter applied and returns keys to normal navigation.
pub fn filter_clear(&mut self)
Sourcepub fn active_filter(&self) -> &str
pub fn active_filter(&self) -> &str
The focused pane’s filter, if any.
pub fn open_detail(&mut self, cli: &Arc<DatabricksCli>)
Sourcepub fn uc_drill(&mut self, cli: &Arc<DatabricksCli>) -> bool
pub fn uc_drill(&mut self, cli: &Arc<DatabricksCli>) -> bool
Descends one level in the Unity Catalog tree. Returns false when the selection is a leaf (caller should open the detail view instead).
Sourcepub fn uc_up(&mut self, cli: &Arc<DatabricksCli>) -> bool
pub fn uc_up(&mut self, cli: &Arc<DatabricksCli>) -> bool
Ascends one level; returns false if already at the catalog root.
Sourcepub fn secrets_drill(&mut self, cli: &Arc<DatabricksCli>) -> bool
pub fn secrets_drill(&mut self, cli: &Arc<DatabricksCli>) -> bool
Enter in the Secrets pane: descend from a scope into its keys. On a key it does nothing — secret values are never displayed — but still returns true so Enter never opens a (bogus) detail view.
Sourcepub fn secrets_up(&mut self, cli: &Arc<DatabricksCli>) -> bool
pub fn secrets_up(&mut self, cli: &Arc<DatabricksCli>) -> bool
Backspace inside a scope: back to the scopes listing.
pub fn poll_secrets(&mut self) -> bool
Sourcepub fn open_secret_form(&mut self)
pub fn open_secret_form(&mut self)
a in the secrets pane: create a scope (top level) or add a
secret (inside a scope).
pub fn secret_form_push(&mut self, c: char)
pub fn secret_form_pop(&mut self)
Sourcepub fn secret_form_submit(&mut self, cli: &Arc<DatabricksCli>)
pub fn secret_form_submit(&mut self, cli: &Arc<DatabricksCli>)
Enter in the form: advance to the value stage, or submit.
Sourcepub fn request_secret_delete(&mut self)
pub fn request_secret_delete(&mut self)
x in the secrets pane: delete the selected scope or key.
Sourcepub fn resource_name(&self, kind: &str, id: &str) -> Option<String>
pub fn resource_name(&self, kind: &str, id: &str) -> Option<String>
Looks up a resource’s display name by id in the loaded panes — lets the cost view show “nightly-etl” instead of a job id.
Sourcepub fn warehouses(&self) -> Vec<(String, String, bool)>
pub fn warehouses(&self) -> Vec<(String, String, bool)>
All known warehouses as (name, id, running).
Sourcepub fn open_preview(&mut self, cli: &Arc<DatabricksCli>, force_pick: bool)
pub fn open_preview(&mut self, cli: &Arc<DatabricksCli>, force_pick: bool)
Runs a sample-data query for the selected table or view. With
force_pick (or several warehouses and no remembered choice) a
warehouse picker opens first.
Sourcepub fn open_cost(&mut self, cli: &Arc<DatabricksCli>)
pub fn open_cost(&mut self, cli: &Arc<DatabricksCli>)
Opens the DBU usage view, resolving a warehouse like previews do.
Sourcepub fn open_lineage(&mut self, cli: &Arc<DatabricksCli>)
pub fn open_lineage(&mut self, cli: &Arc<DatabricksCli>)
Opens the lineage view for the selected table/view; needs a warehouse since lineage lives in system tables.
pub fn close_cost(&mut self)
Sourcepub fn open_sql(&mut self)
pub fn open_sql(&mut self)
Opens the SQL console. With a table/view selected in the catalog pane, the prompt starts as an editable query against it.
pub fn close_sql(&mut self)
Sourcepub fn sql_tab(&mut self, cli: &Arc<DatabricksCli>)
pub fn sql_tab(&mut self, cli: &Arc<DatabricksCli>)
Tab in the SQL prompt: complete catalog / schema / table / column names from the workspace, fetching each level once per session. A repeat press cycles to the next candidate.
Sourcepub fn sql_complete_next(&mut self, delta: i32)
pub fn sql_complete_next(&mut self, delta: i32)
Tab / shift+tab with the popup open: cycle candidates.
Sourcepub fn sql_complete_cancel(&mut self)
pub fn sql_complete_cancel(&mut self)
Esc: restore the typed prefix and close the popup.
Sourcepub fn sql_complete_accept(&mut self)
pub fn sql_complete_accept(&mut self)
Keeps the inserted candidate and closes the popup.
Sourcepub fn poll_uc_names(&mut self) -> bool
pub fn poll_uc_names(&mut self) -> bool
Caches fetched completion names and fills the waiting popup.
Sourcepub fn sql_set_input(&mut self, s: &str)
pub fn sql_set_input(&mut self, s: &str)
Replaces the prompt contents (after an $EDITOR round-trip).
Sourcepub fn hist_search_current(&self) -> Option<&String>
pub fn hist_search_current(&self) -> Option<&String>
The history entry the active Ctrl+R search currently matches.
pub fn hist_search_start(&mut self)
pub fn hist_search_push(&mut self, c: char)
pub fn hist_search_pop(&mut self)
Sourcepub fn hist_search_older(&mut self)
pub fn hist_search_older(&mut self)
Ctrl+R again: step to the next older match.
pub fn hist_search_accept(&mut self)
pub fn hist_search_cancel(&mut self)
pub fn sql_push(&mut self, c: char)
Sourcepub fn sql_delete(&mut self)
pub fn sql_delete(&mut self)
Delete: removes the character under the caret.
pub fn sql_left(&mut self)
pub fn sql_right(&mut self)
Sourcepub fn sql_hist_prev(&mut self)
pub fn sql_hist_prev(&mut self)
↑ at the prompt: step back through history, stashing the draft.
Sourcepub fn sql_hist_next(&mut self)
pub fn sql_hist_next(&mut self)
↓ at the prompt: step forward, back to the stashed draft at the end.
pub fn sql_home(&mut self)
pub fn sql_end(&mut self)
pub fn sql_scroll(&mut self, delta: i32)
Sourcepub fn sql_run(&mut self, cli: &Arc<DatabricksCli>)
pub fn sql_run(&mut self, cli: &Arc<DatabricksCli>)
Runs the typed statement, resolving a warehouse like previews do.
Sourcepub fn sql_export(&mut self)
pub fn sql_export(&mut self)
Ctrl+S in the console: export the current results.
Sourcepub fn preview_h(&mut self, delta: i32)
pub fn preview_h(&mut self, delta: i32)
←/→ in a preview: page columns in the grid, switch rows in record view.
Sourcepub fn preview_toggle_record(&mut self)
pub fn preview_toggle_record(&mut self)
v/enter in a preview: transposed view of the top visible row.
pub fn preview_filter_start(&mut self)
pub fn preview_filter_push(&mut self, c: char)
pub fn preview_filter_pop(&mut self)
pub fn preview_filter_accept(&mut self)
pub fn preview_filter_clear(&mut self)
Sourcepub fn preview_export(&mut self)
pub fn preview_export(&mut self)
e in a table preview: export the sampled rows.
pub fn poll_sql(&mut self) -> bool
pub fn poll_cost(&mut self) -> bool
pub fn wh_picker_next(&mut self)
pub fn wh_picker_prev(&mut self)
pub fn wh_picker_cancel(&mut self)
Sourcepub fn wh_picker_select(&mut self, cli: &Arc<DatabricksCli>)
pub fn wh_picker_select(&mut self, cli: &Arc<DatabricksCli>)
Confirms the warehouse choice, remembers it, and starts the preview.
pub fn close_preview(&mut self)
pub fn poll_preview(&mut self) -> bool
pub fn preview_scroll(&mut self, delta: i32)
pub fn poll_uc(&mut self) -> bool
Sourcepub fn open_grants(&mut self, cli: &Arc<DatabricksCli>)
pub fn open_grants(&mut self, cli: &Arc<DatabricksCli>)
Opens the access view for the selected item: effective UC grants or the workspace object ACL.
Sourcepub fn open_run(&mut self, cli: &Arc<DatabricksCli>)
pub fn open_run(&mut self, cli: &Arc<DatabricksCli>)
Drills from an open job or pipeline detail into its most recent run/update.
pub fn close_run(&mut self)
Moves to an older (delta > 0) or newer (delta < 0) run.
Sourcepub fn run_toggle_output(&mut self, cli: &Arc<DatabricksCli>)
pub fn run_toggle_output(&mut self, cli: &Arc<DatabricksCli>)
o in the run view: toggles the full output/log view, fetching
all task outputs on first use.
Sourcepub fn request_run_repair(&mut self)
pub fn request_run_repair(&mut self)
r in the run view: rerun only the failed tasks of the shown run.
Sourcepub fn run_toggle_timeline(&mut self)
pub fn run_toggle_timeline(&mut self)
t in the run view: per-task execution timeline of a job run.
Sourcepub fn run_toggle_dag(&mut self)
pub fn run_toggle_dag(&mut self)
d in the run view: dependency tree of the run’s tasks.
Sourcepub fn run_toggle_grid(&mut self, cli: &Arc<DatabricksCli>)
pub fn run_toggle_grid(&mut self, cli: &Arc<DatabricksCli>)
g in the run view: history grid — every task’s state across the
job’s recent runs, with duration trends.
pub fn poll_grid(&mut self) -> bool
pub fn run_toggle_raw(&mut self)
pub fn run_scroll(&mut self, delta: i32)
Sourcepub fn poll_run(&mut self, cli: &Arc<DatabricksCli>) -> bool
pub fn poll_run(&mut self, cli: &Arc<DatabricksCli>) -> bool
Applies run fetch results; also re-polls a live run every few seconds so an executing run’s tasks update on their own.
pub fn close_detail(&mut self)
pub fn toggle_raw(&mut self)
Sourcepub fn poll_detail(&mut self) -> bool
pub fn poll_detail(&mut self) -> bool
Applies a finished detail fetch; returns true if the UI should redraw.
pub fn detail_scroll(&mut self, delta: i32)
Sourcepub fn request_action(&mut self)
pub fn request_action(&mut self)
Prepares a contextual action for the selected item, pending confirmation: start/stop for clusters, warehouses and pipelines, run-now for jobs.
Sourcepub fn request_schedule_toggle(&mut self, cli: &Arc<DatabricksCli>)
pub fn request_schedule_toggle(&mut self, cli: &Arc<DatabricksCli>)
S on the jobs pane: pause or resume the selected job’s schedule,
trigger or continuous mode. No confirm — it’s a symmetric toggle,
undone by pressing S again.
Sourcepub fn request_run_cancel(&mut self)
pub fn request_run_cancel(&mut self)
s in the run view: cancel the shown run/update after a confirm.
Sourcepub fn sql_cancel(&mut self, cli: &Arc<DatabricksCli>)
pub fn sql_cancel(&mut self, cli: &Arc<DatabricksCli>)
Cancels the in-flight console statement server-side; the polling task then sees CANCELED and surfaces it in the results pane.
pub fn cancel_confirm(&mut self)
pub fn confirm_execute(&mut self, cli: &Arc<DatabricksCli>)
Sourcepub fn poll_action(&mut self, cli: &Arc<DatabricksCli>) -> bool
pub fn poll_action(&mut self, cli: &Arc<DatabricksCli>) -> bool
Applies a finished action; refreshes on success. Returns true on change.
Sourcepub fn expire_flash(&mut self) -> bool
pub fn expire_flash(&mut self) -> bool
Drops the flash message once it has been visible long enough.
Sourcepub fn open_in_browser(&self)
pub fn open_in_browser(&self)
Opens the selected item (or the open detail view) in the workspace web UI.
Sourcepub fn status_counts(&self) -> (usize, usize, usize, usize)
pub fn status_counts(&self) -> (usize, usize, usize, usize)
Counts of (ok, pending, failed, idle) items across all panels.
pub fn last_refresh_age(&self) -> Duration
pub fn spinner(&self) -> &'static str
pub fn spinner_frame(&self) -> usize
Sourcepub fn busy(&self) -> bool
pub fn busy(&self) -> bool
True whenever any background work is in flight — the loop uses this to keep spinners ticking, not just during panel refreshes.
pub fn tick_spinner(&mut self)
pub fn toggle_zoom(&mut self)
pub fn focus_next(&mut self)
pub fn focus_prev(&mut self)
pub fn needs_refresh(&self) -> bool
pub fn start_refresh(&mut self, cli: &Arc<DatabricksCli>)
Sourcepub fn poll_refresh(&mut self) -> bool
pub fn poll_refresh(&mut self) -> bool
Applies any fetch results that have arrived; returns true if the UI should redraw.
Auto Trait Implementations§
impl !RefUnwindSafe for App
impl !UnwindSafe for App
impl Freeze for App
impl Send for App
impl Sync for App
impl Unpin for App
impl UnsafeUnpin for App
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more