推进 INI 面板 launch API schema 暴露

This commit is contained in:
2026-06-15 06:58:04 +08:00
parent 30598120e4
commit 6b5999930a
8 changed files with 101 additions and 4 deletions

View File

@@ -65,9 +65,25 @@
const launchDoc = await loadLaunchFrame();
const launchApi = launchDoc.defaultView.linuxCncIniPanelLaunchApi;
if (!launchApi?.getLaunchApiManifest || !launchApi?.getLauncherLinks || !launchApi?.getControlPageApiMethods) {
if (
!launchApi?.getLaunchApiSchema ||
!launchApi?.getLaunchApiManifest ||
!launchApi?.getLauncherLinks ||
!launchApi?.getControlPageApiMethods
) {
throw new Error("launch API namespace did not expose shell helpers");
}
const launchApiSchema = launchApi.getLaunchApiSchema();
assertEqual(
launchApiSchema.manifestVersion,
1,
"launch API schema manifest version",
);
assertEqual(
launchApiSchema.fields.includes("persistenceCapabilities"),
true,
"launch API schema persistence field",
);
const launchApiManifest = launchApi.getLaunchApiManifest();
assertEqual(
launchApiManifest.apiName,
@@ -81,7 +97,7 @@
);
assertEqual(
launchApiManifest.methods.join(","),
"getLaunchApiManifest,getLauncherLinks,getControlPageApiMethods",
"getLaunchApiSchema,getLaunchApiManifest,getLauncherLinks,getControlPageApiMethods",
"launch API manifest methods",
);
assertEqual(