nectar/kinode/packages/homepage/api/homepage:sys-v1.wit

38 lines
1.2 KiB
Plaintext
Raw Normal View History

interface homepage {
enum capability {
remove-other,
set-stylesheet,
}
2024-05-06 21:12:08 +03:00
/// The request format to add or remove an app from the homepage. You must have messaging
/// access to `homepage:homepage:sys` in order to perform this. Serialize using serde_json.
variant request {
2024-05-06 21:12:08 +03:00
/// the package and process name will come from request source.
/// the path will automatically have the process_id prepended.
/// the icon is a base64 encoded image.
add(add-request),
/// remove ourself from homepage (message source will be item removed)
2024-05-06 21:12:08 +03:00
remove,
/// remove another app from homepage
/// using this requires RemoveOther capability
/// app store uses this to remove apps on uninstall
remove-other(string),
/// set the stylesheet for the homepage
/// using this requires SetStylesheet capability
/// settings:settings:sys uses this to set the stylesheet
set-stylesheet(string),
2024-05-06 21:12:08 +03:00
}
2024-05-07 02:48:23 +03:00
record add-request {
2024-05-06 21:12:08 +03:00
label: string,
2024-05-14 02:32:39 +03:00
icon: option<string>,
path: option<string>,
widget: option<string>,
2024-05-06 21:12:08 +03:00
}
}
world homepage-sys-v1 {
import homepage;
2024-12-10 01:08:50 +03:00
include process-v1;
}