@stina/extension-api 0.58.0 → 1.0.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/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/runtime.d.cts +2 -2
- package/dist/runtime.d.ts +2 -2
- package/dist/schemas/index.cjs +61 -0
- package/dist/schemas/index.cjs.map +1 -1
- package/dist/schemas/index.d.cts +458 -6
- package/dist/schemas/index.d.ts +458 -6
- package/dist/schemas/index.js +56 -0
- package/dist/schemas/index.js.map +1 -1
- package/dist/{types.tools-DtYAgtto.d.cts → types.tools-CQrbET-n.d.cts} +79 -1
- package/dist/{types.tools-DtYAgtto.d.ts → types.tools-CQrbET-n.d.ts} +79 -1
- package/package.json +1 -1
- package/schema/extension-manifest.schema.json +58 -0
- package/src/index.ts +4 -0
- package/src/schemas/card.schema.ts +43 -0
- package/src/schemas/components.schema.ts +29 -0
- package/src/schemas/contributions.schema.ts +26 -0
- package/src/schemas/index.ts +7 -0
- package/src/schemas/permissions.schema.ts +2 -0
- package/src/types.components.ts +47 -0
- package/src/types.contributions.ts +35 -0
- package/src/types.permissions.ts +1 -0
- package/src/types.ts +1 -0
package/dist/schemas/index.js
CHANGED
|
@@ -24,6 +24,7 @@ var VALID_PERMISSIONS = [
|
|
|
24
24
|
"settings.register",
|
|
25
25
|
"commands.register",
|
|
26
26
|
"panels.register",
|
|
27
|
+
"statusCards.register",
|
|
27
28
|
"events.emit",
|
|
28
29
|
"scheduler.register",
|
|
29
30
|
"background.workers",
|
|
@@ -60,6 +61,7 @@ var CapabilityPermissionSchema = z.enum([
|
|
|
60
61
|
"settings.register",
|
|
61
62
|
"commands.register",
|
|
62
63
|
"panels.register",
|
|
64
|
+
"statusCards.register",
|
|
63
65
|
"events.emit",
|
|
64
66
|
"scheduler.register",
|
|
65
67
|
"chat.message.write",
|
|
@@ -477,6 +479,22 @@ var StatTilePropsSchema = z2.object({
|
|
|
477
479
|
trendIsGood: z2.boolean().optional().describe("Whether up is the good direction. Defaults to true"),
|
|
478
480
|
style: ExtensionComponentStyleSchema.optional()
|
|
479
481
|
}).passthrough().describe("Single-number stat tile component");
|
|
482
|
+
var ProgressShapeSchema = z2.enum(["bar", "circle"]).describe("Drawn as a rail or as a ring");
|
|
483
|
+
var ProgressColorSchema = z2.enum(["accent", "success", "warning", "danger", "info", "neutral"]).describe("One of the theme colours");
|
|
484
|
+
var ProgressBarPropsSchema = z2.object({
|
|
485
|
+
component: z2.literal("ProgressBar"),
|
|
486
|
+
label: z2.string().describe("What is being measured"),
|
|
487
|
+
value: z2.number().describe("Where the reading sits. Clamped to the range"),
|
|
488
|
+
min: z2.number().optional().describe("Bottom of the range. Defaults to 0"),
|
|
489
|
+
max: z2.number().optional().describe("Top of the range. Defaults to 100"),
|
|
490
|
+
shape: ProgressShapeSchema.optional().describe("Defaults to bar"),
|
|
491
|
+
color: ProgressColorSchema.optional().describe("Defaults to accent"),
|
|
492
|
+
unit: z2.string().optional().describe("Written after the value"),
|
|
493
|
+
valueLabel: z2.string().optional().describe("The readout in words, replacing value and unit"),
|
|
494
|
+
caption: z2.string().optional().describe("One quiet line under the reading"),
|
|
495
|
+
icon: z2.string().optional().describe("Icon name"),
|
|
496
|
+
style: ExtensionComponentStyleSchema.optional()
|
|
497
|
+
}).passthrough().describe("Progress component");
|
|
480
498
|
var KeyValueRowSchema = z2.object({
|
|
481
499
|
label: z2.string(),
|
|
482
500
|
value: z2.string(),
|
|
@@ -604,6 +622,13 @@ var PanelDefinitionSchema = z3.object({
|
|
|
604
622
|
icon: z3.string().optional().describe("Icon name (from huge-icons)"),
|
|
605
623
|
view: PanelViewSchema.describe("Panel view schema")
|
|
606
624
|
}).describe("Panel definition");
|
|
625
|
+
var StatusCardDefinitionSchema = z3.object({
|
|
626
|
+
id: z3.string().describe("Unique card ID within the extension"),
|
|
627
|
+
title: z3.string().describe("What it is called where the user picks it"),
|
|
628
|
+
icon: z3.string().optional().describe("Icon name (from huge-icons)"),
|
|
629
|
+
size: z3.enum(["line", "block"]).describe("How much room it may take: one row, or up to three"),
|
|
630
|
+
view: PanelComponentViewSchema.describe("What it draws, and where the data comes from")
|
|
631
|
+
}).describe("Status card definition");
|
|
607
632
|
var ProviderConfigViewSchema = z3.object({
|
|
608
633
|
content: ExtensionComponentDataSchema.describe("Root component to render")
|
|
609
634
|
}).describe("Provider configuration view (component tree)");
|
|
@@ -646,6 +671,7 @@ var StorageContributionsSchema = z3.object({
|
|
|
646
671
|
var ExtensionContributionsSchema = z3.object({
|
|
647
672
|
toolSettings: z3.array(ToolSettingsViewDefinitionSchema).optional().describe("Tool settings views"),
|
|
648
673
|
panels: z3.array(PanelDefinitionSchema).optional().describe("Right panel contributions"),
|
|
674
|
+
statusCards: z3.array(StatusCardDefinitionSchema).optional().describe("Cards for the strip above the conversation list"),
|
|
649
675
|
providers: z3.array(ProviderDefinitionSchema).optional().describe("AI providers"),
|
|
650
676
|
tools: z3.array(ToolDefinitionSchema).optional().describe("Tools for Stina to use"),
|
|
651
677
|
commands: z3.array(CommandDefinitionSchema).optional().describe("Slash commands"),
|
|
@@ -801,6 +827,20 @@ var StatTileCardSchema = z5.object({
|
|
|
801
827
|
trendIsGood: z5.boolean().optional(),
|
|
802
828
|
style
|
|
803
829
|
}).strict();
|
|
830
|
+
var ProgressBarCardSchema = z5.object({
|
|
831
|
+
component: z5.literal("ProgressBar"),
|
|
832
|
+
label: z5.string(),
|
|
833
|
+
value: z5.number(),
|
|
834
|
+
min: z5.number().optional(),
|
|
835
|
+
max: z5.number().optional(),
|
|
836
|
+
shape: ProgressShapeSchema.optional(),
|
|
837
|
+
color: ProgressColorSchema.optional(),
|
|
838
|
+
unit: z5.string().optional(),
|
|
839
|
+
valueLabel: z5.string().optional(),
|
|
840
|
+
caption: z5.string().optional(),
|
|
841
|
+
icon: z5.string().optional(),
|
|
842
|
+
style
|
|
843
|
+
}).strict();
|
|
804
844
|
var KeyValueListCardSchema = z5.object({
|
|
805
845
|
component: z5.literal("KeyValueList"),
|
|
806
846
|
rows: z5.array(
|
|
@@ -869,6 +909,7 @@ var CHAT_CARD_COMPONENTS = [
|
|
|
869
909
|
"WeatherForecast",
|
|
870
910
|
"Chart",
|
|
871
911
|
"StatTile",
|
|
912
|
+
"ProgressBar",
|
|
872
913
|
"KeyValueList",
|
|
873
914
|
"Timeline",
|
|
874
915
|
"Note",
|
|
@@ -891,11 +932,21 @@ var CARD_MEMBERS = [
|
|
|
891
932
|
WeatherForecastCardSchema,
|
|
892
933
|
ChartCardSchema,
|
|
893
934
|
StatTileCardSchema,
|
|
935
|
+
ProgressBarCardSchema,
|
|
894
936
|
KeyValueListCardSchema,
|
|
895
937
|
TimelineCardSchema,
|
|
896
938
|
NoteCardSchema,
|
|
897
939
|
CalendarEventCardSchema
|
|
898
940
|
];
|
|
941
|
+
var CHAT_CARD_PROPS = Object.freeze(
|
|
942
|
+
Object.fromEntries(
|
|
943
|
+
CARD_MEMBERS.map((member) => {
|
|
944
|
+
const shape = member.shape;
|
|
945
|
+
const name = shape["component"]._def.value;
|
|
946
|
+
return [name, Object.freeze(Object.keys(shape))];
|
|
947
|
+
})
|
|
948
|
+
)
|
|
949
|
+
);
|
|
899
950
|
var ChatCardComponentSchema = z5.lazy(
|
|
900
951
|
() => z5.discriminatedUnion(
|
|
901
952
|
"component",
|
|
@@ -1048,6 +1099,7 @@ export {
|
|
|
1048
1099
|
AuthorSchema,
|
|
1049
1100
|
ButtonPropsSchema,
|
|
1050
1101
|
CHAT_CARD_COMPONENTS,
|
|
1102
|
+
CHAT_CARD_PROPS,
|
|
1051
1103
|
CalendarEventPropsSchema,
|
|
1052
1104
|
CalendarEventStatusSchema,
|
|
1053
1105
|
CapabilityPermissionSchema,
|
|
@@ -1104,6 +1156,9 @@ export {
|
|
|
1104
1156
|
PillPropsSchema,
|
|
1105
1157
|
PillVariantSchema,
|
|
1106
1158
|
PlatformSchema,
|
|
1159
|
+
ProgressBarPropsSchema,
|
|
1160
|
+
ProgressColorSchema,
|
|
1161
|
+
ProgressShapeSchema,
|
|
1107
1162
|
PromptContributionSchema,
|
|
1108
1163
|
PromptSectionSchema,
|
|
1109
1164
|
ProviderConfigViewSchema,
|
|
@@ -1111,6 +1166,7 @@ export {
|
|
|
1111
1166
|
SelectPropsSchema,
|
|
1112
1167
|
StatTilePropsSchema,
|
|
1113
1168
|
StatTrendSchema,
|
|
1169
|
+
StatusCardDefinitionSchema,
|
|
1114
1170
|
StoragePermissionSchema,
|
|
1115
1171
|
SystemPermissionSchema,
|
|
1116
1172
|
TextInputPropsSchema,
|