@yaklabs-ai/plugin-protocol 0.36.0 → 0.37.1
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 +34 -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,17 @@ 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.
|
|
4155
|
+
*
|
|
4156
|
+
* 0.37.1 adds the required, ungated `featureFlags.value(key)` reader to both backend targets.
|
|
4157
|
+
* Unknown keys return false; the host supplies evaluated values before activation and updates them.
|
|
4158
|
+
* Additive: existing plugins keep loading. A consumer declares ^0.37.1.
|
|
4144
4159
|
*/
|
|
4145
|
-
export declare const KAY_PLUGIN_SDK_VERSION: "0.
|
|
4160
|
+
export declare const KAY_PLUGIN_SDK_VERSION: "0.37.1";
|
|
4146
4161
|
|
|
4147
4162
|
export declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
|
|
4148
4163
|
|
|
@@ -5784,6 +5799,11 @@ export declare const KayPluginManifestV1: z.ZodObject<{
|
|
|
5784
5799
|
body: z.ZodString;
|
|
5785
5800
|
}, z.core.$strict>>;
|
|
5786
5801
|
}, z.core.$strict>>>;
|
|
5802
|
+
toastPreviews: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
5803
|
+
rule: z.ZodString;
|
|
5804
|
+
body: z.ZodString;
|
|
5805
|
+
address: z.ZodString;
|
|
5806
|
+
}, z.core.$strict>>>;
|
|
5787
5807
|
pages: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
5788
5808
|
id: z.ZodString;
|
|
5789
5809
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -6912,6 +6932,11 @@ export declare const KayUiTargetManifest: z.ZodObject<{
|
|
|
6912
6932
|
body: z.ZodString;
|
|
6913
6933
|
}, z.core.$strict>>;
|
|
6914
6934
|
}, z.core.$strict>>>;
|
|
6935
|
+
toastPreviews: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
6936
|
+
rule: z.ZodString;
|
|
6937
|
+
body: z.ZodString;
|
|
6938
|
+
address: z.ZodString;
|
|
6939
|
+
}, z.core.$strict>>>;
|
|
6915
6940
|
pages: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
6916
6941
|
id: z.ZodString;
|
|
6917
6942
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -14080,6 +14105,14 @@ export declare const UiSlotContribution: z.ZodObject<{
|
|
|
14080
14105
|
|
|
14081
14106
|
export declare type UiSlotContribution = z.infer<typeof UiSlotContribution>;
|
|
14082
14107
|
|
|
14108
|
+
export declare const UiToastPreviewContribution: z.ZodObject<{
|
|
14109
|
+
rule: z.ZodString;
|
|
14110
|
+
body: z.ZodString;
|
|
14111
|
+
address: z.ZodString;
|
|
14112
|
+
}, z.core.$strict>;
|
|
14113
|
+
|
|
14114
|
+
export declare type UiToastPreviewContribution = z.infer<typeof UiToastPreviewContribution>;
|
|
14115
|
+
|
|
14083
14116
|
export declare const UriModuleContribution: z.ZodObject<{
|
|
14084
14117
|
authService: z.ZodOptional<z.ZodString>;
|
|
14085
14118
|
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.1";
|
|
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