@industry-theme/agent-panels 0.2.31 → 0.2.32

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.
@@ -38,6 +38,25 @@ export interface SkillMarkdownProps {
38
38
  actions?: PanelActions;
39
39
  /** Optional event emitter for panel communication */
40
40
  events?: PanelEventEmitter;
41
+ /** Install button configuration */
42
+ installConfig?: {
43
+ /** Whether the skill is currently installed */
44
+ isInstalled: boolean;
45
+ /** Directory IDs where the skill is installed */
46
+ installedDirectoryIds?: string[];
47
+ /** GitHub source information for the skill */
48
+ githubSource?: {
49
+ owner: string;
50
+ repo: string;
51
+ branch: string;
52
+ skillPath: string;
53
+ currentSha?: string;
54
+ };
55
+ /** Callback when install button is clicked */
56
+ onInstall: () => void;
57
+ /** Optional callback when uninstall is requested */
58
+ onUninstall?: () => void;
59
+ };
41
60
  }
42
61
  /**
43
62
  * SkillMarkdown component
@@ -1 +1 @@
1
- {"version":3,"file":"SkillMarkdown.d.ts","sourceRoot":"","sources":["../../../../src/panels/skills/components/SkillMarkdown.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAEL,KAAK,kBAAkB,EAEvB,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,KAAK,EAAe,MAAM,wBAAwB,CAAC;AAGjE,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEtE,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,KAAK,EAAE,KAAK,CAAC;IACb,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,kDAAkD;IAClD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACrD,+DAA+D;IAC/D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,0FAA0F;IAC1F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,uEAAuE;IACvE,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,iDAAiD;IACjD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,qDAAqD;IACrD,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AA+lBD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA8QtD,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"SkillMarkdown.d.ts","sourceRoot":"","sources":["../../../../src/panels/skills/components/SkillMarkdown.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAEL,KAAK,kBAAkB,EAEvB,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,KAAK,EAAe,MAAM,wBAAwB,CAAC;AAGjE,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEtE,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,KAAK,EAAE,KAAK,CAAC;IACb,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC/C,kDAAkD;IAClD,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IACrD,+DAA+D;IAC/D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,0FAA0F;IAC1F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yEAAyE;IACzE,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,uEAAuE;IACvE,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,iDAAiD;IACjD,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,qDAAqD;IACrD,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,mCAAmC;IACnC,aAAa,CAAC,EAAE;QACd,+CAA+C;QAC/C,WAAW,EAAE,OAAO,CAAC;QACrB,iDAAiD;QACjD,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;QACjC,8CAA8C;QAC9C,YAAY,CAAC,EAAE;YACb,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,MAAM,CAAC;YAClB,UAAU,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,8CAA8C;QAC9C,SAAS,EAAE,MAAM,IAAI,CAAC;QACtB,oDAAoD;QACpD,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;KAC1B,CAAC;CACH;AA+lBD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyXtD,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -2201,7 +2201,7 @@ const createLucideIcon = (iconName, iconNode) => {
2201
2201
  * This source code is licensed under the ISC license.
2202
2202
  * See the LICENSE file in the root directory of this source tree.
2203
2203
  */
2204
- const __iconNode$t = [
2204
+ const __iconNode$u = [
2205
2205
  ["path", { d: "M12 7v14", key: "1akyts" }],
2206
2206
  [
2207
2207
  "path",
@@ -2211,14 +2211,14 @@ const __iconNode$t = [
2211
2211
  }
2212
2212
  ]
2213
2213
  ];
2214
- const BookOpen = createLucideIcon("book-open", __iconNode$t);
2214
+ const BookOpen = createLucideIcon("book-open", __iconNode$u);
2215
2215
  /**
2216
2216
  * @license lucide-react v0.552.0 - ISC
2217
2217
  *
2218
2218
  * This source code is licensed under the ISC license.
2219
2219
  * See the LICENSE file in the root directory of this source tree.
2220
2220
  */
2221
- const __iconNode$s = [
2221
+ const __iconNode$t = [
2222
2222
  ["path", { d: "M12 8V4H8", key: "hb8ula" }],
2223
2223
  ["rect", { width: "16", height: "12", x: "4", y: "8", rx: "2", key: "enze0r" }],
2224
2224
  ["path", { d: "M2 14h2", key: "vft8re" }],
@@ -2226,93 +2226,105 @@ const __iconNode$s = [
2226
2226
  ["path", { d: "M15 13v2", key: "1xurst" }],
2227
2227
  ["path", { d: "M9 13v2", key: "rq6x2g" }]
2228
2228
  ];
2229
- const Bot = createLucideIcon("bot", __iconNode$s);
2229
+ const Bot = createLucideIcon("bot", __iconNode$t);
2230
2230
  /**
2231
2231
  * @license lucide-react v0.552.0 - ISC
2232
2232
  *
2233
2233
  * This source code is licensed under the ISC license.
2234
2234
  * See the LICENSE file in the root directory of this source tree.
2235
2235
  */
2236
- const __iconNode$r = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
2237
- const Check = createLucideIcon("check", __iconNode$r);
2236
+ const __iconNode$s = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
2237
+ const Check = createLucideIcon("check", __iconNode$s);
2238
2238
  /**
2239
2239
  * @license lucide-react v0.552.0 - ISC
2240
2240
  *
2241
2241
  * This source code is licensed under the ISC license.
2242
2242
  * See the LICENSE file in the root directory of this source tree.
2243
2243
  */
2244
- const __iconNode$q = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
2245
- const ChevronDown = createLucideIcon("chevron-down", __iconNode$q);
2244
+ const __iconNode$r = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
2245
+ const ChevronDown = createLucideIcon("chevron-down", __iconNode$r);
2246
2246
  /**
2247
2247
  * @license lucide-react v0.552.0 - ISC
2248
2248
  *
2249
2249
  * This source code is licensed under the ISC license.
2250
2250
  * See the LICENSE file in the root directory of this source tree.
2251
2251
  */
2252
- const __iconNode$p = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
2253
- const ChevronLeft = createLucideIcon("chevron-left", __iconNode$p);
2252
+ const __iconNode$q = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
2253
+ const ChevronLeft = createLucideIcon("chevron-left", __iconNode$q);
2254
2254
  /**
2255
2255
  * @license lucide-react v0.552.0 - ISC
2256
2256
  *
2257
2257
  * This source code is licensed under the ISC license.
2258
2258
  * See the LICENSE file in the root directory of this source tree.
2259
2259
  */
2260
- const __iconNode$o = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
2261
- const ChevronRight = createLucideIcon("chevron-right", __iconNode$o);
2260
+ const __iconNode$p = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
2261
+ const ChevronRight = createLucideIcon("chevron-right", __iconNode$p);
2262
2262
  /**
2263
2263
  * @license lucide-react v0.552.0 - ISC
2264
2264
  *
2265
2265
  * This source code is licensed under the ISC license.
2266
2266
  * See the LICENSE file in the root directory of this source tree.
2267
2267
  */
2268
- const __iconNode$n = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
2269
- const ChevronUp = createLucideIcon("chevron-up", __iconNode$n);
2268
+ const __iconNode$o = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
2269
+ const ChevronUp = createLucideIcon("chevron-up", __iconNode$o);
2270
2270
  /**
2271
2271
  * @license lucide-react v0.552.0 - ISC
2272
2272
  *
2273
2273
  * This source code is licensed under the ISC license.
2274
2274
  * See the LICENSE file in the root directory of this source tree.
2275
2275
  */
2276
- const __iconNode$m = [
2276
+ const __iconNode$n = [
2277
2277
  ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
2278
2278
  ["line", { x1: "12", x2: "12", y1: "8", y2: "12", key: "1pkeuh" }],
2279
2279
  ["line", { x1: "12", x2: "12.01", y1: "16", y2: "16", key: "4dfq90" }]
2280
2280
  ];
2281
- const CircleAlert = createLucideIcon("circle-alert", __iconNode$m);
2281
+ const CircleAlert = createLucideIcon("circle-alert", __iconNode$n);
2282
2282
  /**
2283
2283
  * @license lucide-react v0.552.0 - ISC
2284
2284
  *
2285
2285
  * This source code is licensed under the ISC license.
2286
2286
  * See the LICENSE file in the root directory of this source tree.
2287
2287
  */
2288
- const __iconNode$l = [
2288
+ const __iconNode$m = [
2289
2289
  ["path", { d: "m18 16 4-4-4-4", key: "1inbqp" }],
2290
2290
  ["path", { d: "m6 8-4 4 4 4", key: "15zrgr" }],
2291
2291
  ["path", { d: "m14.5 4-5 16", key: "e7oirm" }]
2292
2292
  ];
2293
- const CodeXml = createLucideIcon("code-xml", __iconNode$l);
2293
+ const CodeXml = createLucideIcon("code-xml", __iconNode$m);
2294
2294
  /**
2295
2295
  * @license lucide-react v0.552.0 - ISC
2296
2296
  *
2297
2297
  * This source code is licensed under the ISC license.
2298
2298
  * See the LICENSE file in the root directory of this source tree.
2299
2299
  */
2300
- const __iconNode$k = [
2300
+ const __iconNode$l = [
2301
2301
  ["path", { d: "m16 18 6-6-6-6", key: "eg8j8" }],
2302
2302
  ["path", { d: "m8 6-6 6 6 6", key: "ppft3o" }]
2303
2303
  ];
2304
- const Code = createLucideIcon("code", __iconNode$k);
2304
+ const Code = createLucideIcon("code", __iconNode$l);
2305
2305
  /**
2306
2306
  * @license lucide-react v0.552.0 - ISC
2307
2307
  *
2308
2308
  * This source code is licensed under the ISC license.
2309
2309
  * See the LICENSE file in the root directory of this source tree.
2310
2310
  */
2311
- const __iconNode$j = [
2311
+ const __iconNode$k = [
2312
2312
  ["rect", { width: "14", height: "14", x: "8", y: "8", rx: "2", ry: "2", key: "17jyea" }],
2313
2313
  ["path", { d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2", key: "zix9uf" }]
2314
2314
  ];
2315
- const Copy = createLucideIcon("copy", __iconNode$j);
2315
+ const Copy = createLucideIcon("copy", __iconNode$k);
2316
+ /**
2317
+ * @license lucide-react v0.552.0 - ISC
2318
+ *
2319
+ * This source code is licensed under the ISC license.
2320
+ * See the LICENSE file in the root directory of this source tree.
2321
+ */
2322
+ const __iconNode$j = [
2323
+ ["path", { d: "M12 15V3", key: "m9g1x1" }],
2324
+ ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
2325
+ ["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
2326
+ ];
2327
+ const Download = createLucideIcon("download", __iconNode$j);
2316
2328
  /**
2317
2329
  * @license lucide-react v0.552.0 - ISC
2318
2330
  *
@@ -49886,7 +49898,8 @@ const SkillMarkdown = ({
49886
49898
  structure,
49887
49899
  skill,
49888
49900
  actions,
49889
- events
49901
+ events,
49902
+ installConfig
49890
49903
  }) => {
49891
49904
  const [parsed, setParsed] = React2__default.useState(null);
49892
49905
  const [headers, setHeaders] = React2__default.useState([]);
@@ -50080,6 +50093,112 @@ const SkillMarkdown = ({
50080
50093
  onClose: handleCloseSearch
50081
50094
  }
50082
50095
  ),
50096
+ installConfig && /* @__PURE__ */ jsxs(
50097
+ "div",
50098
+ {
50099
+ style: {
50100
+ padding: "12px 16px",
50101
+ background: theme2.colors.backgroundSecondary,
50102
+ borderBottom: `1px solid ${theme2.colors.border}`,
50103
+ display: "flex",
50104
+ alignItems: "center",
50105
+ justifyContent: "space-between",
50106
+ gap: "12px",
50107
+ flexShrink: 0
50108
+ },
50109
+ children: [
50110
+ /* @__PURE__ */ jsx("div", { style: { display: "flex", alignItems: "center", gap: "12px", flex: 1 }, children: installConfig.githubSource && /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: "8px", fontSize: theme2.fontSizes[1], color: theme2.colors.textSecondary }, children: [
50111
+ /* @__PURE__ */ jsx(Globe, { size: 14 }),
50112
+ /* @__PURE__ */ jsxs("span", { style: { fontFamily: theme2.fonts.monospace }, children: [
50113
+ installConfig.githubSource.owner,
50114
+ "/",
50115
+ installConfig.githubSource.repo
50116
+ ] }),
50117
+ /* @__PURE__ */ jsx("span", { style: { color: theme2.colors.border }, children: "•" }),
50118
+ /* @__PURE__ */ jsx("span", { children: installConfig.githubSource.branch })
50119
+ ] }) }),
50120
+ installConfig.isInstalled ? /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: [
50121
+ /* @__PURE__ */ jsxs(
50122
+ "div",
50123
+ {
50124
+ style: {
50125
+ display: "flex",
50126
+ alignItems: "center",
50127
+ gap: "6px",
50128
+ padding: "6px 12px",
50129
+ borderRadius: theme2.radii[1],
50130
+ background: "#16a34a15",
50131
+ border: "1px solid #16a34a30",
50132
+ color: "#16a34a",
50133
+ fontSize: theme2.fontSizes[1],
50134
+ fontWeight: 500
50135
+ },
50136
+ children: [
50137
+ /* @__PURE__ */ jsx(Check, { size: 14 }),
50138
+ /* @__PURE__ */ jsx("span", { children: "Installed" })
50139
+ ]
50140
+ }
50141
+ ),
50142
+ installConfig.onUninstall && /* @__PURE__ */ jsx(
50143
+ "button",
50144
+ {
50145
+ onClick: installConfig.onUninstall,
50146
+ style: {
50147
+ padding: "6px 12px",
50148
+ borderRadius: theme2.radii[1],
50149
+ background: "transparent",
50150
+ border: `1px solid ${theme2.colors.border}`,
50151
+ color: theme2.colors.textSecondary,
50152
+ fontSize: theme2.fontSizes[1],
50153
+ cursor: "pointer",
50154
+ transition: "all 0.2s"
50155
+ },
50156
+ onMouseEnter: (e) => {
50157
+ e.currentTarget.style.background = theme2.colors.backgroundSecondary;
50158
+ e.currentTarget.style.borderColor = theme2.colors.error;
50159
+ e.currentTarget.style.color = theme2.colors.error;
50160
+ },
50161
+ onMouseLeave: (e) => {
50162
+ e.currentTarget.style.background = "transparent";
50163
+ e.currentTarget.style.borderColor = theme2.colors.border;
50164
+ e.currentTarget.style.color = theme2.colors.textSecondary;
50165
+ },
50166
+ children: "Uninstall"
50167
+ }
50168
+ )
50169
+ ] }) : /* @__PURE__ */ jsxs(
50170
+ "button",
50171
+ {
50172
+ onClick: installConfig.onInstall,
50173
+ style: {
50174
+ display: "flex",
50175
+ alignItems: "center",
50176
+ gap: "6px",
50177
+ padding: "8px 16px",
50178
+ borderRadius: theme2.radii[1],
50179
+ background: theme2.colors.primary,
50180
+ border: "none",
50181
+ color: theme2.colors.background,
50182
+ fontSize: theme2.fontSizes[1],
50183
+ fontWeight: 500,
50184
+ cursor: "pointer",
50185
+ transition: "all 0.2s"
50186
+ },
50187
+ onMouseEnter: (e) => {
50188
+ e.currentTarget.style.opacity = "0.85";
50189
+ },
50190
+ onMouseLeave: (e) => {
50191
+ e.currentTarget.style.opacity = "1";
50192
+ },
50193
+ children: [
50194
+ /* @__PURE__ */ jsx(Download, { size: 14 }),
50195
+ /* @__PURE__ */ jsx("span", { children: "Install Skill" })
50196
+ ]
50197
+ }
50198
+ )
50199
+ ]
50200
+ }
50201
+ ),
50083
50202
  /* @__PURE__ */ jsx("div", { style: { padding: theme2.space[3], paddingBottom: 0 }, children: /* @__PURE__ */ jsx(SkillMetadataSection, { metadata: parsed.metadata, theme: theme2, structure, skill, actions, events }) }),
50084
50203
  /* @__PURE__ */ jsxs("div", { style: { flex: 1, display: "flex", overflow: "hidden" }, children: [
50085
50204
  /* @__PURE__ */ jsx(