@yaklabs-ai/plugin-protocol 0.36.0 → 0.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/THIRD-PARTY-INVENTORY.json +1 -1
- package/dist/index.d.ts +30 -1
- package/dist/index.js +58 -4
- package/package.json +1 -1
package/README.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -1689,6 +1689,7 @@ declare namespace authoringContributionSchemas {
|
|
|
1689
1689
|
KayUiAppHostCapability,
|
|
1690
1690
|
UiAppCapabilities,
|
|
1691
1691
|
UiRailEntryContribution,
|
|
1692
|
+
UiToastPreviewContribution,
|
|
1692
1693
|
UiPageContribution,
|
|
1693
1694
|
UiAppContribution,
|
|
1694
1695
|
ThemeContribution,
|
|
@@ -2799,6 +2800,11 @@ declare const canonicalContributionSchemas: {
|
|
|
2799
2800
|
body: z.ZodString;
|
|
2800
2801
|
}, z.core.$strict>>;
|
|
2801
2802
|
}, z.core.$strict>;
|
|
2803
|
+
UiToastPreviewContribution: z.ZodObject<{
|
|
2804
|
+
rule: z.ZodString;
|
|
2805
|
+
body: z.ZodString;
|
|
2806
|
+
address: z.ZodString;
|
|
2807
|
+
}, z.core.$strict>;
|
|
2802
2808
|
UiPageContribution: z.ZodObject<{
|
|
2803
2809
|
id: z.ZodString;
|
|
2804
2810
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -4141,8 +4147,13 @@ export declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
|
|
|
4141
4147
|
* under `kay.ui` `contributes` names each page's title, icon file, companion status and opened
|
|
4142
4148
|
* event. A reference presentation that opens a page gains `scheme` and `addresses`, and may leave
|
|
4143
4149
|
* out `uriModule` when another layer serves the address. A plugin using these declares ^0.36.0.
|
|
4150
|
+
*
|
|
4151
|
+
* 0.37.0 lets a notification rule's toast declare a preview (#15904). `toastPreviews` under `kay.ui`
|
|
4152
|
+
* `contributes` names the `rule`, the `body` that fills the preview, either a `contextOnly` app in
|
|
4153
|
+
* the plugin or a body the host ships, and the `address` it is about. Additive. A plugin that
|
|
4154
|
+
* declares a preview declares ^0.37.0.
|
|
4144
4155
|
*/
|
|
4145
|
-
export declare const KAY_PLUGIN_SDK_VERSION: "0.
|
|
4156
|
+
export declare const KAY_PLUGIN_SDK_VERSION: "0.37.0";
|
|
4146
4157
|
|
|
4147
4158
|
export declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
|
|
4148
4159
|
|
|
@@ -5784,6 +5795,11 @@ export declare const KayPluginManifestV1: z.ZodObject<{
|
|
|
5784
5795
|
body: z.ZodString;
|
|
5785
5796
|
}, z.core.$strict>>;
|
|
5786
5797
|
}, z.core.$strict>>>;
|
|
5798
|
+
toastPreviews: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
5799
|
+
rule: z.ZodString;
|
|
5800
|
+
body: z.ZodString;
|
|
5801
|
+
address: z.ZodString;
|
|
5802
|
+
}, z.core.$strict>>>;
|
|
5787
5803
|
pages: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
5788
5804
|
id: z.ZodString;
|
|
5789
5805
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -6912,6 +6928,11 @@ export declare const KayUiTargetManifest: z.ZodObject<{
|
|
|
6912
6928
|
body: z.ZodString;
|
|
6913
6929
|
}, z.core.$strict>>;
|
|
6914
6930
|
}, z.core.$strict>>>;
|
|
6931
|
+
toastPreviews: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
6932
|
+
rule: z.ZodString;
|
|
6933
|
+
body: z.ZodString;
|
|
6934
|
+
address: z.ZodString;
|
|
6935
|
+
}, z.core.$strict>>>;
|
|
6915
6936
|
pages: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
6916
6937
|
id: z.ZodString;
|
|
6917
6938
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -14080,6 +14101,14 @@ export declare const UiSlotContribution: z.ZodObject<{
|
|
|
14080
14101
|
|
|
14081
14102
|
export declare type UiSlotContribution = z.infer<typeof UiSlotContribution>;
|
|
14082
14103
|
|
|
14104
|
+
export declare const UiToastPreviewContribution: z.ZodObject<{
|
|
14105
|
+
rule: z.ZodString;
|
|
14106
|
+
body: z.ZodString;
|
|
14107
|
+
address: z.ZodString;
|
|
14108
|
+
}, z.core.$strict>;
|
|
14109
|
+
|
|
14110
|
+
export declare type UiToastPreviewContribution = z.infer<typeof UiToastPreviewContribution>;
|
|
14111
|
+
|
|
14083
14112
|
export declare const UriModuleContribution: z.ZodObject<{
|
|
14084
14113
|
authService: z.ZodOptional<z.ZodString>;
|
|
14085
14114
|
authScheme: z.ZodOptional<z.ZodString>;
|
package/dist/index.js
CHANGED
|
@@ -254,7 +254,7 @@ var JsonSchema = z4.record(z4.string(), JsonValue);
|
|
|
254
254
|
var KAY_PLUGIN_MANIFEST_SIZE_CAP_BYTES = 1024 * 1024;
|
|
255
255
|
var KAY_PLUGIN_PROTOCOL_VERSION = "kay.plugin.v1";
|
|
256
256
|
var KAY_PLUGIN_PROTOCOL_PACKAGE_NAME = "@bonsai/plugin-protocol";
|
|
257
|
-
var KAY_PLUGIN_SDK_VERSION = "0.
|
|
257
|
+
var KAY_PLUGIN_SDK_VERSION = "0.37.0";
|
|
258
258
|
var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
|
|
259
259
|
"0.26.3",
|
|
260
260
|
"0.27.1",
|
|
@@ -265,7 +265,8 @@ var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
|
|
|
265
265
|
"0.32.0",
|
|
266
266
|
"0.33.0",
|
|
267
267
|
"0.34.0",
|
|
268
|
-
"0.35.0"
|
|
268
|
+
"0.35.0",
|
|
269
|
+
"0.36.0"
|
|
269
270
|
];
|
|
270
271
|
var KAY_PLUGIN_TARGET_NAMES = [
|
|
271
272
|
"kay.agent",
|
|
@@ -2762,6 +2763,7 @@ __export(contributions_exports, {
|
|
|
2762
2763
|
UiPageContribution: () => UiPageContribution,
|
|
2763
2764
|
UiRailEntryContribution: () => UiRailEntryContribution,
|
|
2764
2765
|
UiSlotContribution: () => UiSlotContribution,
|
|
2766
|
+
UiToastPreviewContribution: () => UiToastPreviewContribution,
|
|
2765
2767
|
UriModuleContribution: () => UriModuleContribution,
|
|
2766
2768
|
UriModuleFacts: () => UriModuleFacts,
|
|
2767
2769
|
WhiteboardTypeContribution: () => WhiteboardTypeContribution,
|
|
@@ -3843,6 +3845,11 @@ function createContributionsSchemas(canonical) {
|
|
|
3843
3845
|
badge: UiRailBadge.optional(),
|
|
3844
3846
|
panel: z12.strictObject({ body: LocalContributionId2 }).optional()
|
|
3845
3847
|
});
|
|
3848
|
+
const UiToastPreviewContribution2 = z12.strictObject({
|
|
3849
|
+
rule: LocalContributionId2,
|
|
3850
|
+
body: LocalContributionId2,
|
|
3851
|
+
address: NonEmptyString3
|
|
3852
|
+
});
|
|
3846
3853
|
const UiPageContribution2 = z12.strictObject({
|
|
3847
3854
|
id: NonEmptyString3,
|
|
3848
3855
|
title: NonEmptyString3.optional(),
|
|
@@ -3992,6 +3999,7 @@ function createContributionsSchemas(canonical) {
|
|
|
3992
3999
|
KayUiAppHostCapability: KayUiAppHostCapability2,
|
|
3993
4000
|
UiAppCapabilities: UiAppCapabilities2,
|
|
3994
4001
|
UiRailEntryContribution: UiRailEntryContribution2,
|
|
4002
|
+
UiToastPreviewContribution: UiToastPreviewContribution2,
|
|
3995
4003
|
UiPageContribution: UiPageContribution2,
|
|
3996
4004
|
UiAppContribution: UiAppContribution2,
|
|
3997
4005
|
ThemeContribution: ThemeContribution2,
|
|
@@ -4000,7 +4008,7 @@ function createContributionsSchemas(canonical) {
|
|
|
4000
4008
|
PluginContributionKind: PluginContributionKind2
|
|
4001
4009
|
};
|
|
4002
4010
|
}
|
|
4003
|
-
var { ApprovalCardForm, ApprovalCardStoredForm, ApprovalTypeContribution, UriModuleFacts, ToolContribution, ToolPermission, AgentToolContribution, ConverterContribution, UriModuleContribution, AppUriModuleContribution, AppDataSourceContribution, WhiteboardTypeStorage, WhiteboardTypeContribution, AppDataMaterializerContribution, ArtifactUriModuleContribution, CliBindingContribution, GitHostContribution, ResourceContribution, SkillContribution, PluginSkillSourceDeclaration, SearchProviderContribution, InteractionDriverContribution, EntityResolverContribution, AgentRenderContribution, EndpointContribution, WorkflowContribution, McpServerUrl, McpServerAuthMode, McpServerContribution, McpServerContributions, AppEventSubscription, ContextContributorContribution, PluginEventDefinitionContribution, PluginNotificationRuleContribution, UiEventSubscriptionContribution, DeviceDelegationContribution, SessionReaderContribution, UiCommandContribution, UiSlotContribution, SettingsPanelContribution, ResultRendererContribution, ReferenceOpenBehavior, ReferencePresentationVariant, ReferencePresentationVariants, ReferencePresentationUriPattern, ReferencePresentationUrlClaim, ReferencePresentationTooltip, ReferencePresentationAddress, ReferencePresentationContribution, RichViewContribution, KayUiAppHostCapability, UiAppCapabilities, UiRailEntryContribution, UiPageContribution, UiAppContribution, ThemeContribution, CommandHandler, CommandContribution, PluginContributionKind } = createContributionsSchemas(false);
|
|
4011
|
+
var { ApprovalCardForm, ApprovalCardStoredForm, ApprovalTypeContribution, UriModuleFacts, ToolContribution, ToolPermission, AgentToolContribution, ConverterContribution, UriModuleContribution, AppUriModuleContribution, AppDataSourceContribution, WhiteboardTypeStorage, WhiteboardTypeContribution, AppDataMaterializerContribution, ArtifactUriModuleContribution, CliBindingContribution, GitHostContribution, ResourceContribution, SkillContribution, PluginSkillSourceDeclaration, SearchProviderContribution, InteractionDriverContribution, EntityResolverContribution, AgentRenderContribution, EndpointContribution, WorkflowContribution, McpServerUrl, McpServerAuthMode, McpServerContribution, McpServerContributions, AppEventSubscription, ContextContributorContribution, PluginEventDefinitionContribution, PluginNotificationRuleContribution, UiEventSubscriptionContribution, DeviceDelegationContribution, SessionReaderContribution, UiCommandContribution, UiSlotContribution, SettingsPanelContribution, ResultRendererContribution, ReferenceOpenBehavior, ReferencePresentationVariant, ReferencePresentationVariants, ReferencePresentationUriPattern, ReferencePresentationUrlClaim, ReferencePresentationTooltip, ReferencePresentationAddress, ReferencePresentationContribution, RichViewContribution, KayUiAppHostCapability, UiAppCapabilities, UiRailEntryContribution, UiToastPreviewContribution, UiPageContribution, UiAppContribution, ThemeContribution, CommandHandler, CommandContribution, PluginContributionKind } = createContributionsSchemas(false);
|
|
4004
4012
|
var canonicalContributionSchemas = createContributionsSchemas(true);
|
|
4005
4013
|
|
|
4006
4014
|
// packages/plugin-protocol/dist/icon-shape.js
|
|
@@ -4074,7 +4082,7 @@ var KAY_UI_NATIVE_EVENT_SUBSCRIPTIONS = [
|
|
|
4074
4082
|
var KAY_UI_NATIVE_EVENT_ALLOWLIST = new Set(KAY_UI_NATIVE_EVENT_SUBSCRIPTIONS);
|
|
4075
4083
|
var RETIRED_COMPATIBILITY_KEYS = ["policy"];
|
|
4076
4084
|
function createManifestSchemas(canonical) {
|
|
4077
|
-
const { AgentRenderContribution: AgentRenderContribution2, ApprovalTypeContribution: ApprovalTypeContribution2, WorkflowContribution: WorkflowContribution2, AppDataMaterializerContribution: AppDataMaterializerContribution2, AppDataSourceContribution: AppDataSourceContribution2, AppUriModuleContribution: AppUriModuleContribution2, AppEventSubscription: AppEventSubscription2, ArtifactUriModuleContribution: ArtifactUriModuleContribution2, CliBindingContribution: CliBindingContribution2, CommandContribution: CommandContribution2, ContextContributorContribution: ContextContributorContribution2, ConverterContribution: ConverterContribution2, SessionReaderContribution: SessionReaderContribution2, DeviceDelegationContribution: DeviceDelegationContribution2, EndpointContribution: EndpointContribution2, EntityResolverContribution: EntityResolverContribution2, GitHostContribution: GitHostContribution2, McpServerContributions: McpServerContributions2, PluginEventDefinitionContribution: PluginEventDefinitionContribution2, PluginNotificationRuleContribution: PluginNotificationRuleContribution2, ResourceContribution: ResourceContribution2, ReferencePresentationContribution: ReferencePresentationContribution2, ResultRendererContribution: ResultRendererContribution2, RichViewContribution: RichViewContribution2, PluginSkillSourceDeclaration: PluginSkillSourceDeclaration2, InteractionDriverContribution: InteractionDriverContribution2, SearchProviderContribution: SearchProviderContribution2, SkillContribution: SkillContribution2, SettingsPanelContribution: SettingsPanelContribution2, ThemeContribution: ThemeContribution2, AgentToolContribution: AgentToolContribution2, ToolContribution: ToolContribution2, UiCommandContribution: UiCommandContribution2, UiAppContribution: UiAppContribution2, UiRailEntryContribution: UiRailEntryContribution2, UiPageContribution: UiPageContribution2, UiEventSubscriptionContribution: UiEventSubscriptionContribution2, UiSlotContribution: UiSlotContribution2, UriModuleContribution: UriModuleContribution2, WhiteboardTypeContribution: WhiteboardTypeContribution2 } = canonical ? canonicalContributionSchemas : contributions_exports;
|
|
4085
|
+
const { AgentRenderContribution: AgentRenderContribution2, ApprovalTypeContribution: ApprovalTypeContribution2, WorkflowContribution: WorkflowContribution2, AppDataMaterializerContribution: AppDataMaterializerContribution2, AppDataSourceContribution: AppDataSourceContribution2, AppUriModuleContribution: AppUriModuleContribution2, AppEventSubscription: AppEventSubscription2, ArtifactUriModuleContribution: ArtifactUriModuleContribution2, CliBindingContribution: CliBindingContribution2, CommandContribution: CommandContribution2, ContextContributorContribution: ContextContributorContribution2, ConverterContribution: ConverterContribution2, SessionReaderContribution: SessionReaderContribution2, DeviceDelegationContribution: DeviceDelegationContribution2, EndpointContribution: EndpointContribution2, EntityResolverContribution: EntityResolverContribution2, GitHostContribution: GitHostContribution2, McpServerContributions: McpServerContributions2, PluginEventDefinitionContribution: PluginEventDefinitionContribution2, PluginNotificationRuleContribution: PluginNotificationRuleContribution2, ResourceContribution: ResourceContribution2, ReferencePresentationContribution: ReferencePresentationContribution2, ResultRendererContribution: ResultRendererContribution2, RichViewContribution: RichViewContribution2, PluginSkillSourceDeclaration: PluginSkillSourceDeclaration2, InteractionDriverContribution: InteractionDriverContribution2, SearchProviderContribution: SearchProviderContribution2, SkillContribution: SkillContribution2, SettingsPanelContribution: SettingsPanelContribution2, ThemeContribution: ThemeContribution2, AgentToolContribution: AgentToolContribution2, ToolContribution: ToolContribution2, UiCommandContribution: UiCommandContribution2, UiAppContribution: UiAppContribution2, UiRailEntryContribution: UiRailEntryContribution2, UiToastPreviewContribution: UiToastPreviewContribution2, UiPageContribution: UiPageContribution2, UiEventSubscriptionContribution: UiEventSubscriptionContribution2, UiSlotContribution: UiSlotContribution2, UriModuleContribution: UriModuleContribution2, WhiteboardTypeContribution: WhiteboardTypeContribution2 } = canonical ? canonicalContributionSchemas : contributions_exports;
|
|
4078
4086
|
const { HttpsUrl: HttpsUrl2, LocalContributionId: LocalContributionId2, NonEmptyString: NonEmptyString3, PackageAssetPath: PackageAssetPath2, PluginId: PluginId2, PluginNamespace: PluginNamespace2, RegistrableDomain: RegistrableDomain2, SignedInStatusCode: SignedInStatusCode2, TargetEntrypoint: TargetEntrypoint2 } = canonical ? canonicalCommonSchemas : common_exports;
|
|
4079
4087
|
const { PluginPermissionManifest: PluginPermissionManifest2 } = canonical ? canonicalPermissionSchemas : permissions_exports;
|
|
4080
4088
|
const KayAgentTargetManifest2 = z13.strictObject({
|
|
@@ -4197,6 +4205,7 @@ function createManifestSchemas(canonical) {
|
|
|
4197
4205
|
views: z13.array(RichViewContribution2).optional(),
|
|
4198
4206
|
apps: z13.array(UiAppContribution2).optional(),
|
|
4199
4207
|
railEntries: z13.array(UiRailEntryContribution2).optional(),
|
|
4208
|
+
toastPreviews: z13.array(UiToastPreviewContribution2).optional(),
|
|
4200
4209
|
pages: z13.array(UiPageContribution2).optional(),
|
|
4201
4210
|
themes: z13.array(ThemeContribution2).optional(),
|
|
4202
4211
|
eventSubscriptions: z13.array(UiEventSubscriptionContribution2).optional(),
|
|
@@ -4746,6 +4755,50 @@ function createManifestSchemas(canonical) {
|
|
|
4746
4755
|
});
|
|
4747
4756
|
}
|
|
4748
4757
|
}
|
|
4758
|
+
const notificationRuleIds = new Set(manifest.targets?.kay?.app?.contributes?.notificationRules?.map((rule) => rule.localId) ?? []);
|
|
4759
|
+
const previewedRules = /* @__PURE__ */ new Set();
|
|
4760
|
+
for (const [index, preview] of (manifest.targets?.kay?.ui?.contributes?.toastPreviews ?? []).entries()) {
|
|
4761
|
+
const path = [
|
|
4762
|
+
"targets",
|
|
4763
|
+
"kay",
|
|
4764
|
+
"ui",
|
|
4765
|
+
"contributes",
|
|
4766
|
+
"toastPreviews",
|
|
4767
|
+
index
|
|
4768
|
+
];
|
|
4769
|
+
if (!notificationRuleIds.has(preview.rule)) {
|
|
4770
|
+
ctx.addIssue({
|
|
4771
|
+
code: "custom",
|
|
4772
|
+
path: [...path, "rule"],
|
|
4773
|
+
message: `Toast preview references unknown notification rule ${preview.rule}`
|
|
4774
|
+
});
|
|
4775
|
+
}
|
|
4776
|
+
if (previewedRules.has(preview.rule)) {
|
|
4777
|
+
ctx.addIssue({
|
|
4778
|
+
code: "custom",
|
|
4779
|
+
path: [...path, "rule"],
|
|
4780
|
+
message: `Notification rule ${preview.rule} has more than one toast preview`
|
|
4781
|
+
});
|
|
4782
|
+
}
|
|
4783
|
+
previewedRules.add(preview.rule);
|
|
4784
|
+
for (const [, name] of preview.address.matchAll(/\$\{([^}]*)\}/g)) {
|
|
4785
|
+
if (name !== "navigateTarget" && name !== "revision") {
|
|
4786
|
+
ctx.addIssue({
|
|
4787
|
+
code: "custom",
|
|
4788
|
+
path: [...path, "address"],
|
|
4789
|
+
message: `Toast preview address can't fill \${${name}}: only \${navigateTarget} and \${revision}`
|
|
4790
|
+
});
|
|
4791
|
+
}
|
|
4792
|
+
}
|
|
4793
|
+
const app = manifest.targets?.kay?.ui?.contributes?.apps?.find((candidate) => candidate.localId === preview.body);
|
|
4794
|
+
if (app !== void 0 && app.contextOnly !== true) {
|
|
4795
|
+
ctx.addIssue({
|
|
4796
|
+
code: "custom",
|
|
4797
|
+
path: [...path, "body"],
|
|
4798
|
+
message: `Toast preview body ${app.localId} must be a contextOnly ui app`
|
|
4799
|
+
});
|
|
4800
|
+
}
|
|
4801
|
+
}
|
|
4749
4802
|
const subscribedUiEvents = new Set(manifest.targets?.kay?.ui?.contributes?.eventSubscriptions?.map((subscription) => subscription.event) ?? []);
|
|
4750
4803
|
const invokedUiEndpoints = new Set(manifest.permissions?.byTarget["kay.ui"]?.endpoints?.filter((grant) => grant.operations.includes("invoke")).map((grant) => grant.endpoint) ?? []);
|
|
4751
4804
|
const uriModuleIds = new Set([
|
|
@@ -7285,6 +7338,7 @@ export {
|
|
|
7285
7338
|
UiPageContribution,
|
|
7286
7339
|
UiRailEntryContribution,
|
|
7287
7340
|
UiSlotContribution,
|
|
7341
|
+
UiToastPreviewContribution,
|
|
7288
7342
|
UriModuleContribution,
|
|
7289
7343
|
UriScheme,
|
|
7290
7344
|
WEB_SESSION_CSRF_SELECTOR_PATTERN,
|
package/package.json
CHANGED