Skip to main content

DevelopmentNodeEnvironment_MicrosoftVSCodeDependency_22NodeVersion_Bundle_Clean_Debug_ElectronProfile_EsbuildCompiler_Mountain/IPC/WindServiceHandlers/
Extensions.rs

1//! # Extension management handlers
2//!
3//! Wind queries the scanner's registry through these. Each
4//! delegates to `MountainEnvironment::GetExtensions` /
5//! `GetExtension`; the work has already happened in
6//! `ExtensionPopulate` / `Scanner::ScanDirectoryForExtensions`.
7//!
8//! Layout (one export per file, file name = identity):
9//! - `ExtensionsGetInstalled::ExtensionsGetInstalled` -
10//!   `ILocalExtension`-shaped list with optional `0`/`1` type filter; carries
11//!   the boot-race poll (≤5 s wait for `ExtensionPopulate`) and the manifest
12//!   skeleton fix that keeps the trusted-publishers migration from crashing the
13//!   webview on `manifest.publisher.toLowerCase()`.
14//! - `ExtensionsGetAll::ExtensionsGetAll` - raw manifests, no reshape. Tooling
15//!   / debug surfaces only.
16//! - `ExtensionsGet::ExtensionsGet` - single extension by `<publisher>.<name>`.
17//! - `ExtensionsIsActive::ExtensionsIsActive` - currently a "scanned & present"
18//!   predicate; TODO: consult Cocoon's activation table for a real answer.
19
20pub mod ExtensionsGet;
21
22pub mod ExtensionsGetAll;
23
24pub mod ExtensionsGetInstalled;
25
26pub mod ExtensionsIsActive;