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