@burdenoff/microfe-botmanor 2026.1027.2 → 2026.1027.3
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/botlit/BotlitRoutes.js +142 -132
- package/dist/botlit/BotlitRoutes.js.map +1 -1
- package/dist/botlit/components/AgentApprovalPanel.js +144 -126
- package/dist/botlit/components/AgentApprovalPanel.js.map +1 -1
- package/dist/botlit/components/ModelRegistrationPanel.js +4 -4
- package/dist/botlit/components/VersionHistoryPanel.js +92 -83
- package/dist/botlit/components/VersionHistoryPanel.js.map +1 -1
- package/dist/botlit/pages/A2AAgentDetailPage.js +212 -203
- package/dist/botlit/pages/A2AAgentDetailPage.js.map +1 -1
- package/dist/botlit/pages/A2ARegistryPage.js +129 -117
- package/dist/botlit/pages/A2ARegistryPage.js.map +1 -1
- package/dist/botlit/pages/AgentApprovalsPage.js +122 -110
- package/dist/botlit/pages/AgentApprovalsPage.js.map +1 -1
- package/dist/botlit/pages/AgentBuilderPage.js +18 -18
- package/dist/botlit/pages/AgentDetailPage.js +298 -273
- package/dist/botlit/pages/AgentDetailPage.js.map +1 -1
- package/dist/botlit/pages/AgentsListPage.js +145 -121
- package/dist/botlit/pages/AgentsListPage.js.map +1 -1
- package/dist/botlit/pages/BotChannelsTab.js +238 -226
- package/dist/botlit/pages/BotChannelsTab.js.map +1 -1
- package/dist/botlit/pages/BotDetailPage.js +307 -288
- package/dist/botlit/pages/BotDetailPage.js.map +1 -1
- package/dist/botlit/pages/BotWorkflowTab.js +125 -116
- package/dist/botlit/pages/BotWorkflowTab.js.map +1 -1
- package/dist/botlit/pages/BotsListPage.js +159 -144
- package/dist/botlit/pages/BotsListPage.js.map +1 -1
- package/dist/botlit/pages/BucketsPage.js +279 -258
- package/dist/botlit/pages/BucketsPage.js.map +1 -1
- package/dist/botlit/pages/ChannelDetailPage.js +346 -328
- package/dist/botlit/pages/ChannelDetailPage.js.map +1 -1
- package/dist/botlit/pages/ChannelRoutesPage.js +10 -10
- package/dist/botlit/pages/ChannelsPage.js +163 -148
- package/dist/botlit/pages/ChannelsPage.js.map +1 -1
- package/dist/botlit/pages/DashboardPage.js +129 -114
- package/dist/botlit/pages/DashboardPage.js.map +1 -1
- package/dist/botlit/pages/ExecutionDetailPage.js +145 -139
- package/dist/botlit/pages/ExecutionDetailPage.js.map +1 -1
- package/dist/botlit/pages/ExecutionsPage.js +14 -14
- package/dist/botlit/pages/InstalledPackagesPage.js +245 -227
- package/dist/botlit/pages/InstalledPackagesPage.js.map +1 -1
- package/dist/botlit/pages/KnowledgeBaseDetailPage.js +168 -156
- package/dist/botlit/pages/KnowledgeBaseDetailPage.js.map +1 -1
- package/dist/botlit/pages/KnowledgeBasesPage.js +91 -79
- package/dist/botlit/pages/KnowledgeBasesPage.js.map +1 -1
- package/dist/botlit/pages/MCPServerDetailPage.js +200 -188
- package/dist/botlit/pages/MCPServerDetailPage.js.map +1 -1
- package/dist/botlit/pages/MCPServersPage.js +170 -155
- package/dist/botlit/pages/MCPServersPage.js.map +1 -1
- package/dist/botlit/pages/PoliciesPage.js +113 -104
- package/dist/botlit/pages/PoliciesPage.js.map +1 -1
- package/dist/botlit/pages/PolicyDetailPage.js +145 -133
- package/dist/botlit/pages/PolicyDetailPage.js.map +1 -1
- package/dist/botlit/pages/PromptStudioPage.js +106 -97
- package/dist/botlit/pages/PromptStudioPage.js.map +1 -1
- package/dist/botlit/pages/PromptTemplateDetailPage.js +359 -347
- package/dist/botlit/pages/PromptTemplateDetailPage.js.map +1 -1
- package/dist/botlit/pages/PromptTemplatesPage.js +127 -112
- package/dist/botlit/pages/PromptTemplatesPage.js.map +1 -1
- package/dist/botlit/pages/RetrievalProfileDetailPage.js +219 -210
- package/dist/botlit/pages/RetrievalProfileDetailPage.js.map +1 -1
- package/dist/botlit/pages/RetrievalProfilesPage.js +112 -103
- package/dist/botlit/pages/RetrievalProfilesPage.js.map +1 -1
- package/dist/botlit/pages/SettingsPage.js +264 -252
- package/dist/botlit/pages/SettingsPage.js.map +1 -1
- package/dist/botlit/pages/SkillDetailPage.js +235 -226
- package/dist/botlit/pages/SkillDetailPage.js.map +1 -1
- package/dist/botlit/pages/SkillsPage.js +115 -106
- package/dist/botlit/pages/SkillsPage.js.map +1 -1
- package/dist/botlit/pages/StorePackageDetailPage.js +194 -188
- package/dist/botlit/pages/StorePackageDetailPage.js.map +1 -1
- package/dist/botlit/pages/StorePage.js +161 -155
- package/dist/botlit/pages/StorePage.js.map +1 -1
- package/dist/botlit/permissions/PermissionRequired.js +45 -0
- package/dist/botlit/permissions/PermissionRequired.js.map +1 -0
- package/dist/botlit/permissions/botmanorPermissions.js +72 -0
- package/dist/botlit/permissions/botmanorPermissions.js.map +1 -0
- package/dist/botlit/permissions/index.js +3 -0
- package/dist/botlit/permissions/useBotmanorPermissions.js +19 -0
- package/dist/botlit/permissions/useBotmanorPermissions.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,27 +1,30 @@
|
|
|
1
1
|
import { useBotlit as e } from "../providers/BotlitProvider.js";
|
|
2
2
|
import { formatRelativeTime as t } from "../utils/formatters.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
3
|
+
import { BOTMANOR_PERMISSIONS as n } from "../permissions/botmanorPermissions.js";
|
|
4
|
+
import { BotmanorPermissionGate as r } from "../permissions/useBotmanorPermissions.js";
|
|
5
|
+
import { PageLayout as i } from "../components/PageLayout.js";
|
|
6
|
+
import { Button as a } from "../components/Button.js";
|
|
7
|
+
import "../permissions/index.js";
|
|
8
|
+
import { Card as o, CardContent as s, CardDescription as c, CardHeader as l, CardTitle as u } from "../components/Card.js";
|
|
9
|
+
import { Badge as d } from "../components/Badge.js";
|
|
10
|
+
import { EmptyState as f } from "../components/EmptyState.js";
|
|
11
|
+
import { Input as p } from "../components/Input.js";
|
|
12
|
+
import { ErrorState as m } from "../components/ErrorState.js";
|
|
13
|
+
import { storePackageName as h, useInstalledPackages as ee, usePinPackageVersion as g, useUninstallPackage as te, useUpdateInstalledPackage as _ } from "../hooks/useStore.js";
|
|
11
14
|
import "../hooks/index.js";
|
|
12
|
-
import { PackageKind as
|
|
13
|
-
import { useMemo as
|
|
14
|
-
import { GlassCard as
|
|
15
|
-
import { Fragment as
|
|
15
|
+
import { PackageKind as v } from "../../generated/wspace-types.js";
|
|
16
|
+
import { useMemo as y, useState as b } from "react";
|
|
17
|
+
import { GlassCard as x, PagePurpose as ne } from "@burdenoff/fe-libs/ui";
|
|
18
|
+
import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
|
|
16
19
|
import { Link as re } from "react-router";
|
|
17
|
-
import { ArrowUpCircle as
|
|
18
|
-
import { toast as
|
|
20
|
+
import { ArrowUpCircle as T, Copy as ie, Download as ae, ExternalLink as oe, GitBranch as E, Link2 as D, Package as O, RefreshCw as se, Search as ce, Settings as le, Trash2 as k } from "lucide-react";
|
|
21
|
+
import { toast as A } from "sonner";
|
|
19
22
|
//#region src/botlit/pages/InstalledPackagesPage.tsx
|
|
20
|
-
var
|
|
23
|
+
var j = [
|
|
21
24
|
"DEV",
|
|
22
25
|
"STAGING",
|
|
23
26
|
"PROD"
|
|
24
|
-
],
|
|
27
|
+
], M = {
|
|
25
28
|
APP: {
|
|
26
29
|
label: "Bot",
|
|
27
30
|
icon: "📱"
|
|
@@ -86,146 +89,146 @@ var k = [
|
|
|
86
89
|
label: "Workflow",
|
|
87
90
|
icon: "🔀"
|
|
88
91
|
}
|
|
89
|
-
},
|
|
92
|
+
}, N = {
|
|
90
93
|
label: "Package",
|
|
91
94
|
icon: "📦"
|
|
92
95
|
};
|
|
93
|
-
function
|
|
96
|
+
function P(e) {
|
|
94
97
|
return e.package?.slug ?? e.packageId;
|
|
95
98
|
}
|
|
96
|
-
function
|
|
99
|
+
function F(e) {
|
|
97
100
|
return e.package?.kind;
|
|
98
101
|
}
|
|
99
|
-
function
|
|
100
|
-
let t =
|
|
101
|
-
return t &&
|
|
102
|
+
function I(e) {
|
|
103
|
+
let t = F(e);
|
|
104
|
+
return t && M[t] || N;
|
|
102
105
|
}
|
|
103
|
-
function
|
|
106
|
+
function L(e) {
|
|
104
107
|
let t = e.package?.version;
|
|
105
108
|
return !!(t && t !== e.installedVersion);
|
|
106
109
|
}
|
|
107
|
-
function
|
|
110
|
+
function R(e, t) {
|
|
108
111
|
let n = e.pinnedByEnv?.[t];
|
|
109
112
|
return typeof n == "string" && n !== "" ? n : void 0;
|
|
110
113
|
}
|
|
111
|
-
var
|
|
112
|
-
let { navigateTo:
|
|
114
|
+
var z = () => {
|
|
115
|
+
let { navigateTo: M, getPath: N } = e(), { data: z, loading: B, error: V, refetch: H } = ee(), { uninstall: U, loading: ue } = te(), { update: de, loading: fe } = _(), { pin: pe } = g(), [W, me] = b(""), [he, G] = b(!1), [K, ge] = b("all"), [q, J] = b(null), Y = y(() => {
|
|
113
116
|
let e = W.trim().toLowerCase();
|
|
114
|
-
return
|
|
115
|
-
let n = !e ||
|
|
117
|
+
return z.filter((t) => {
|
|
118
|
+
let n = !e || P(t).toLowerCase().includes(e) || h(t.package).toLowerCase().includes(e), r = K === "all" || F(t) === K;
|
|
116
119
|
return n && r;
|
|
117
120
|
});
|
|
118
121
|
}, [
|
|
119
|
-
|
|
122
|
+
z,
|
|
120
123
|
W,
|
|
121
124
|
K
|
|
122
|
-
]), X =
|
|
125
|
+
]), X = y(() => z.find((e) => e.id === q) ?? null, [z, q]), _e = y(() => z.filter(L).length, [z]), ve = async () => {
|
|
123
126
|
G(!0);
|
|
124
127
|
try {
|
|
125
|
-
await
|
|
128
|
+
await H();
|
|
126
129
|
} finally {
|
|
127
130
|
G(!1);
|
|
128
131
|
}
|
|
129
132
|
}, Z = async (e) => {
|
|
130
133
|
if (confirm("Are you sure you want to uninstall this package?")) try {
|
|
131
|
-
await
|
|
134
|
+
await U(e.id), A.success(`Uninstalled "${h(e.package) || P(e)}"`), J(null), H();
|
|
132
135
|
} catch (e) {
|
|
133
|
-
|
|
136
|
+
A.error(e instanceof Error ? e.message : "Failed to uninstall package");
|
|
134
137
|
}
|
|
135
|
-
},
|
|
138
|
+
}, ye = async (e) => {
|
|
136
139
|
let t = e.package?.version;
|
|
137
140
|
if (t) try {
|
|
138
|
-
await
|
|
141
|
+
await de({
|
|
139
142
|
installedId: e.id,
|
|
140
143
|
input: { installedVersion: t }
|
|
141
|
-
}),
|
|
144
|
+
}), A.success(`Updated to v${t}`), H();
|
|
142
145
|
} catch (e) {
|
|
143
|
-
|
|
146
|
+
A.error(e instanceof Error ? e.message : "Failed to update package");
|
|
144
147
|
}
|
|
145
148
|
}, Q = async (e, t, n) => {
|
|
146
149
|
try {
|
|
147
|
-
await
|
|
150
|
+
await pe({
|
|
148
151
|
installedId: e.id,
|
|
149
152
|
environment: t,
|
|
150
153
|
version: n,
|
|
151
154
|
pinnedByEnv: e.pinnedByEnv
|
|
152
|
-
}),
|
|
155
|
+
}), A.success(n ? `Pinned ${t} to v${n}` : `Unpinned ${t}`), H();
|
|
153
156
|
} catch (e) {
|
|
154
|
-
|
|
157
|
+
A.error(e instanceof Error ? e.message : "Failed to change version pin");
|
|
155
158
|
}
|
|
156
|
-
}, $ = (e) => e === "LINKED" ? /* @__PURE__ */
|
|
157
|
-
let
|
|
158
|
-
return /* @__PURE__ */
|
|
159
|
+
}, $ = (e) => e === "LINKED" ? /* @__PURE__ */ C(D, { className: "h-4 w-4 text-status-info-text" }) : /* @__PURE__ */ C(ie, { className: "h-4 w-4 text-status-warning-text" }), be = ({ pkg: e }) => {
|
|
160
|
+
let i = I(e), c = P(e), l = L(e), u = j.filter((t) => R(e, t));
|
|
161
|
+
return /* @__PURE__ */ C(o, {
|
|
159
162
|
className: "hover:shadow-md transition-shadow cursor-pointer",
|
|
160
163
|
onClick: () => J(e.id),
|
|
161
|
-
children: /* @__PURE__ */
|
|
164
|
+
children: /* @__PURE__ */ w(s, {
|
|
162
165
|
className: "pt-6",
|
|
163
166
|
children: [
|
|
164
|
-
/* @__PURE__ */
|
|
167
|
+
/* @__PURE__ */ w("div", {
|
|
165
168
|
className: "flex items-start justify-between",
|
|
166
|
-
children: [/* @__PURE__ */
|
|
169
|
+
children: [/* @__PURE__ */ w("div", {
|
|
167
170
|
className: "flex items-start gap-3",
|
|
168
|
-
children: [/* @__PURE__ */
|
|
171
|
+
children: [/* @__PURE__ */ C("div", {
|
|
169
172
|
className: "p-2 rounded-lg bg-bg-sunken text-2xl",
|
|
170
|
-
children:
|
|
171
|
-
}), /* @__PURE__ */
|
|
173
|
+
children: i.icon
|
|
174
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ w("div", {
|
|
172
175
|
className: "flex items-center gap-2",
|
|
173
|
-
children: [/* @__PURE__ */
|
|
176
|
+
children: [/* @__PURE__ */ C("h3", {
|
|
174
177
|
className: "font-semibold",
|
|
175
|
-
children:
|
|
176
|
-
}),
|
|
178
|
+
children: h(e.package) || c
|
|
179
|
+
}), l && /* @__PURE__ */ w(d, {
|
|
177
180
|
variant: "warning",
|
|
178
181
|
className: "gap-1",
|
|
179
|
-
children: [/* @__PURE__ */
|
|
182
|
+
children: [/* @__PURE__ */ C(T, { className: "h-3 w-3" }), "Update"]
|
|
180
183
|
})]
|
|
181
|
-
}), /* @__PURE__ */
|
|
184
|
+
}), /* @__PURE__ */ C("p", {
|
|
182
185
|
className: "text-sm text-text-secondary font-mono",
|
|
183
|
-
children:
|
|
186
|
+
children: c
|
|
184
187
|
})] })]
|
|
185
|
-
}), /* @__PURE__ */
|
|
188
|
+
}), /* @__PURE__ */ w("div", {
|
|
186
189
|
className: "flex items-center gap-2",
|
|
187
|
-
children: [$(e.mode), /* @__PURE__ */
|
|
190
|
+
children: [$(e.mode), /* @__PURE__ */ C(d, {
|
|
188
191
|
variant: "outline",
|
|
189
|
-
children:
|
|
192
|
+
children: i.label
|
|
190
193
|
})]
|
|
191
194
|
})]
|
|
192
195
|
}),
|
|
193
|
-
/* @__PURE__ */
|
|
196
|
+
/* @__PURE__ */ w("div", {
|
|
194
197
|
className: "mt-4 grid grid-cols-3 gap-4 text-sm",
|
|
195
198
|
children: [
|
|
196
|
-
/* @__PURE__ */
|
|
199
|
+
/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
197
200
|
className: "text-text-secondary",
|
|
198
201
|
children: "Installed Version"
|
|
199
|
-
}), /* @__PURE__ */
|
|
202
|
+
}), /* @__PURE__ */ w("p", {
|
|
200
203
|
className: "font-medium font-mono",
|
|
201
204
|
children: ["v", e.installedVersion]
|
|
202
205
|
})] }),
|
|
203
|
-
/* @__PURE__ */
|
|
206
|
+
/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
204
207
|
className: "text-text-secondary",
|
|
205
208
|
children: "Mode"
|
|
206
|
-
}), /* @__PURE__ */
|
|
209
|
+
}), /* @__PURE__ */ w("p", {
|
|
207
210
|
className: "font-medium flex items-center gap-1",
|
|
208
211
|
children: [$(e.mode), e.mode]
|
|
209
212
|
})] }),
|
|
210
|
-
/* @__PURE__ */
|
|
213
|
+
/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
211
214
|
className: "text-text-secondary",
|
|
212
215
|
children: "Installed"
|
|
213
|
-
}), /* @__PURE__ */
|
|
216
|
+
}), /* @__PURE__ */ C("p", {
|
|
214
217
|
className: "font-medium",
|
|
215
218
|
children: t(e.installedAt)
|
|
216
219
|
})] })
|
|
217
220
|
]
|
|
218
221
|
}),
|
|
219
|
-
|
|
222
|
+
u.length > 0 && /* @__PURE__ */ w("div", {
|
|
220
223
|
className: "mt-4 pt-4 border-t border-border-subtle",
|
|
221
|
-
children: [/* @__PURE__ */
|
|
224
|
+
children: [/* @__PURE__ */ C("p", {
|
|
222
225
|
className: "text-xs text-text-secondary mb-2",
|
|
223
226
|
children: "Pinned Versions"
|
|
224
|
-
}), /* @__PURE__ */
|
|
227
|
+
}), /* @__PURE__ */ C("div", {
|
|
225
228
|
className: "flex gap-2",
|
|
226
|
-
children:
|
|
227
|
-
let n =
|
|
228
|
-
return /* @__PURE__ */
|
|
229
|
+
children: j.map((t) => {
|
|
230
|
+
let n = R(e, t);
|
|
231
|
+
return /* @__PURE__ */ w(d, {
|
|
229
232
|
variant: n ? "default" : "outline",
|
|
230
233
|
className: "text-xs",
|
|
231
234
|
children: [
|
|
@@ -237,36 +240,42 @@ var L = () => {
|
|
|
237
240
|
})
|
|
238
241
|
})]
|
|
239
242
|
}),
|
|
240
|
-
/* @__PURE__ */
|
|
243
|
+
/* @__PURE__ */ w("div", {
|
|
241
244
|
className: "mt-4 flex justify-end gap-2",
|
|
242
245
|
children: [
|
|
243
|
-
/* @__PURE__ */
|
|
246
|
+
/* @__PURE__ */ w(a, {
|
|
244
247
|
variant: "ghost",
|
|
245
248
|
size: "sm",
|
|
246
249
|
onClick: (e) => {
|
|
247
|
-
e.stopPropagation(),
|
|
250
|
+
e.stopPropagation(), M(`store/package/${c}`);
|
|
248
251
|
},
|
|
249
|
-
children: [/* @__PURE__ */
|
|
252
|
+
children: [/* @__PURE__ */ C(oe, { className: "h-4 w-4 mr-1" }), "View in Store"]
|
|
250
253
|
}),
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
254
|
+
l && /* @__PURE__ */ C(r, {
|
|
255
|
+
permission: n.STORE_UPDATE,
|
|
256
|
+
children: /* @__PURE__ */ w(a, {
|
|
257
|
+
variant: "outline",
|
|
258
|
+
size: "sm",
|
|
259
|
+
onClick: (t) => {
|
|
260
|
+
t.stopPropagation(), ye(e);
|
|
261
|
+
},
|
|
262
|
+
isLoading: fe,
|
|
263
|
+
children: [/* @__PURE__ */ C(T, { className: "h-4 w-4 mr-1" }), "Update"]
|
|
264
|
+
})
|
|
259
265
|
}),
|
|
260
|
-
/* @__PURE__ */
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
266
|
+
/* @__PURE__ */ C(r, {
|
|
267
|
+
permission: n.STORE_DELETE,
|
|
268
|
+
children: /* @__PURE__ */ C(a, {
|
|
269
|
+
variant: "ghost",
|
|
270
|
+
size: "sm",
|
|
271
|
+
"aria-label": "Uninstall package",
|
|
272
|
+
className: "text-status-error-text hover:text-status-error-text",
|
|
273
|
+
onClick: (t) => {
|
|
274
|
+
t.stopPropagation(), Z(e);
|
|
275
|
+
},
|
|
276
|
+
isLoading: ue,
|
|
277
|
+
children: /* @__PURE__ */ C(k, { className: "h-4 w-4" })
|
|
278
|
+
})
|
|
270
279
|
})
|
|
271
280
|
]
|
|
272
281
|
})
|
|
@@ -274,307 +283,313 @@ var L = () => {
|
|
|
274
283
|
})
|
|
275
284
|
});
|
|
276
285
|
};
|
|
277
|
-
return
|
|
286
|
+
return B ? /* @__PURE__ */ C(i, {
|
|
278
287
|
title: "Installed Packages",
|
|
279
288
|
description: "Manage installed store packages",
|
|
280
|
-
children: /* @__PURE__ */
|
|
289
|
+
children: /* @__PURE__ */ C("div", {
|
|
281
290
|
className: "space-y-4",
|
|
282
291
|
children: [
|
|
283
292
|
1,
|
|
284
293
|
2,
|
|
285
294
|
3
|
|
286
|
-
].map((e) => /* @__PURE__ */
|
|
295
|
+
].map((e) => /* @__PURE__ */ C("div", { className: "h-48 bg-bg-sunken motion-safe:animate-vc-shimmer rounded-lg" }, e))
|
|
287
296
|
})
|
|
288
|
-
}) : /* @__PURE__ */
|
|
297
|
+
}) : /* @__PURE__ */ w(i, {
|
|
289
298
|
title: "Installed Packages",
|
|
290
299
|
description: "Manage packages installed from the BotManor Store",
|
|
291
|
-
actions: /* @__PURE__ */
|
|
300
|
+
actions: /* @__PURE__ */ w("div", {
|
|
292
301
|
className: "flex gap-2",
|
|
293
|
-
children: [/* @__PURE__ */
|
|
302
|
+
children: [/* @__PURE__ */ C(a, {
|
|
294
303
|
variant: "outline",
|
|
295
|
-
leftIcon: /* @__PURE__ */
|
|
296
|
-
onClick: () => void
|
|
297
|
-
isLoading:
|
|
304
|
+
leftIcon: /* @__PURE__ */ C(se, { size: 16 }),
|
|
305
|
+
onClick: () => void ve(),
|
|
306
|
+
isLoading: he,
|
|
298
307
|
children: "Check Updates"
|
|
299
|
-
}), /* @__PURE__ */
|
|
300
|
-
leftIcon: /* @__PURE__ */
|
|
301
|
-
onClick: () =>
|
|
308
|
+
}), /* @__PURE__ */ C(a, {
|
|
309
|
+
leftIcon: /* @__PURE__ */ C(O, { size: 16 }),
|
|
310
|
+
onClick: () => M("store"),
|
|
302
311
|
children: "Browse Store"
|
|
303
312
|
})]
|
|
304
313
|
}),
|
|
305
314
|
children: [
|
|
306
|
-
/* @__PURE__ */
|
|
315
|
+
/* @__PURE__ */ C(ne, {
|
|
307
316
|
className: "mb-6",
|
|
308
|
-
icon: /* @__PURE__ */
|
|
317
|
+
icon: /* @__PURE__ */ C(O, { size: 18 }),
|
|
309
318
|
children: "These are the packages you have installed from the BotManor Store and how they are wired into your workspace. Manage each one’s installation mode (linked, so it auto-updates, or forked as an independent copy), pin specific versions per environment, and update or uninstall — this is your dependency manager for everything you pulled from the store."
|
|
310
319
|
}),
|
|
311
|
-
|
|
320
|
+
V ? /* @__PURE__ */ C(m, {
|
|
312
321
|
resource: "installed packages",
|
|
313
|
-
error:
|
|
314
|
-
onRetry: () => void
|
|
315
|
-
}) : /* @__PURE__ */ S
|
|
316
|
-
/* @__PURE__ */
|
|
322
|
+
error: V,
|
|
323
|
+
onRetry: () => void H()
|
|
324
|
+
}) : /* @__PURE__ */ w(S, { children: [
|
|
325
|
+
/* @__PURE__ */ w("div", {
|
|
317
326
|
className: "grid grid-cols-2 md:grid-cols-4 gap-4 mb-6",
|
|
318
327
|
children: [
|
|
319
|
-
/* @__PURE__ */
|
|
328
|
+
/* @__PURE__ */ w(x, {
|
|
320
329
|
treatment: "glass",
|
|
321
330
|
glow: !0,
|
|
322
331
|
className: "p-6 text-center",
|
|
323
|
-
children: [/* @__PURE__ */
|
|
332
|
+
children: [/* @__PURE__ */ C("p", {
|
|
324
333
|
className: "text-3xl font-bold tabular-nums text-text-primary",
|
|
325
|
-
children:
|
|
326
|
-
}), /* @__PURE__ */
|
|
334
|
+
children: z.length
|
|
335
|
+
}), /* @__PURE__ */ C("p", {
|
|
327
336
|
className: "text-sm text-text-secondary",
|
|
328
337
|
children: "Total Installed"
|
|
329
338
|
})]
|
|
330
339
|
}),
|
|
331
|
-
/* @__PURE__ */
|
|
340
|
+
/* @__PURE__ */ w(x, {
|
|
332
341
|
treatment: "metric",
|
|
333
342
|
className: "p-6 text-center",
|
|
334
|
-
children: [/* @__PURE__ */
|
|
343
|
+
children: [/* @__PURE__ */ C("p", {
|
|
335
344
|
className: "text-3xl font-bold tabular-nums text-text-primary",
|
|
336
|
-
children:
|
|
337
|
-
}), /* @__PURE__ */
|
|
345
|
+
children: z.filter((e) => e.mode === "LINKED").length
|
|
346
|
+
}), /* @__PURE__ */ C("p", {
|
|
338
347
|
className: "text-sm text-text-secondary",
|
|
339
348
|
children: "Linked"
|
|
340
349
|
})]
|
|
341
350
|
}),
|
|
342
|
-
/* @__PURE__ */
|
|
351
|
+
/* @__PURE__ */ w(x, {
|
|
343
352
|
treatment: "metric",
|
|
344
353
|
className: "p-6 text-center",
|
|
345
|
-
children: [/* @__PURE__ */
|
|
354
|
+
children: [/* @__PURE__ */ C("p", {
|
|
346
355
|
className: "text-3xl font-bold tabular-nums text-text-primary",
|
|
347
|
-
children:
|
|
348
|
-
}), /* @__PURE__ */
|
|
356
|
+
children: z.filter((e) => e.mode === "FORKED").length
|
|
357
|
+
}), /* @__PURE__ */ C("p", {
|
|
349
358
|
className: "text-sm text-text-secondary",
|
|
350
359
|
children: "Forked"
|
|
351
360
|
})]
|
|
352
361
|
}),
|
|
353
|
-
/* @__PURE__ */
|
|
362
|
+
/* @__PURE__ */ w(x, {
|
|
354
363
|
treatment: "metric",
|
|
355
364
|
className: "p-6 text-center",
|
|
356
|
-
children: [/* @__PURE__ */
|
|
365
|
+
children: [/* @__PURE__ */ C("p", {
|
|
357
366
|
className: "text-3xl font-bold tabular-nums text-text-primary",
|
|
358
|
-
children:
|
|
359
|
-
}), /* @__PURE__ */
|
|
367
|
+
children: _e
|
|
368
|
+
}), /* @__PURE__ */ C("p", {
|
|
360
369
|
className: "text-sm text-text-secondary",
|
|
361
370
|
children: "Updates Available"
|
|
362
371
|
})]
|
|
363
372
|
})
|
|
364
373
|
]
|
|
365
374
|
}),
|
|
366
|
-
/* @__PURE__ */
|
|
375
|
+
/* @__PURE__ */ w("div", {
|
|
367
376
|
className: "flex flex-col md:flex-row gap-4 mb-6",
|
|
368
|
-
children: [/* @__PURE__ */
|
|
377
|
+
children: [/* @__PURE__ */ w("div", {
|
|
369
378
|
className: "relative flex-1",
|
|
370
|
-
children: [/* @__PURE__ */
|
|
379
|
+
children: [/* @__PURE__ */ C(ce, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-text-secondary" }), /* @__PURE__ */ C(p, {
|
|
371
380
|
placeholder: "Search packages...",
|
|
372
381
|
value: W,
|
|
373
|
-
onChange: (e) =>
|
|
382
|
+
onChange: (e) => me(e.target.value),
|
|
374
383
|
className: "pl-9"
|
|
375
384
|
})]
|
|
376
|
-
}), /* @__PURE__ */
|
|
385
|
+
}), /* @__PURE__ */ C("div", {
|
|
377
386
|
className: "flex gap-2",
|
|
378
|
-
children: /* @__PURE__ */
|
|
387
|
+
children: /* @__PURE__ */ w("select", {
|
|
379
388
|
"aria-label": "Filter by package type",
|
|
380
389
|
className: "flex h-10 rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm",
|
|
381
390
|
value: K,
|
|
382
|
-
onChange: (e) =>
|
|
391
|
+
onChange: (e) => ge(e.target.value),
|
|
383
392
|
children: [
|
|
384
|
-
/* @__PURE__ */
|
|
393
|
+
/* @__PURE__ */ C("option", {
|
|
385
394
|
value: "all",
|
|
386
395
|
children: "All Types"
|
|
387
396
|
}),
|
|
388
|
-
/* @__PURE__ */
|
|
389
|
-
value:
|
|
397
|
+
/* @__PURE__ */ C("option", {
|
|
398
|
+
value: v.Agent,
|
|
390
399
|
children: "Agents"
|
|
391
400
|
}),
|
|
392
|
-
/* @__PURE__ */
|
|
393
|
-
value:
|
|
401
|
+
/* @__PURE__ */ C("option", {
|
|
402
|
+
value: v.Skill,
|
|
394
403
|
children: "Skills"
|
|
395
404
|
}),
|
|
396
|
-
/* @__PURE__ */
|
|
397
|
-
value:
|
|
405
|
+
/* @__PURE__ */ C("option", {
|
|
406
|
+
value: v.McpPack,
|
|
398
407
|
children: "MCP Packs"
|
|
399
408
|
}),
|
|
400
|
-
/* @__PURE__ */
|
|
401
|
-
value:
|
|
409
|
+
/* @__PURE__ */ C("option", {
|
|
410
|
+
value: v.PromptTemplate,
|
|
402
411
|
children: "Templates"
|
|
403
412
|
}),
|
|
404
|
-
/* @__PURE__ */
|
|
405
|
-
value:
|
|
413
|
+
/* @__PURE__ */ C("option", {
|
|
414
|
+
value: v.RetrievalProfile,
|
|
406
415
|
children: "Retrieval Profiles"
|
|
407
416
|
})
|
|
408
417
|
]
|
|
409
418
|
})
|
|
410
419
|
})]
|
|
411
420
|
}),
|
|
412
|
-
Y.length > 0 ? /* @__PURE__ */
|
|
421
|
+
Y.length > 0 ? /* @__PURE__ */ C("div", {
|
|
413
422
|
className: "grid grid-cols-1 md:grid-cols-2 gap-4",
|
|
414
|
-
children: Y.map((e) => /* @__PURE__ */
|
|
415
|
-
}) : /* @__PURE__ */
|
|
423
|
+
children: Y.map((e) => /* @__PURE__ */ C(be, { pkg: e }, e.id))
|
|
424
|
+
}) : /* @__PURE__ */ C(f, {
|
|
416
425
|
illustration: "empty-generic",
|
|
417
426
|
title: W || K !== "all" ? "No matching packages" : "No packages installed",
|
|
418
427
|
description: W || K !== "all" ? "Try adjusting your search or type filter." : "Browse the BotManor Store to find agents, skills, and tools to install.",
|
|
419
|
-
action: /* @__PURE__ */
|
|
420
|
-
onClick: () =>
|
|
421
|
-
leftIcon: /* @__PURE__ */
|
|
428
|
+
action: /* @__PURE__ */ C(a, {
|
|
429
|
+
onClick: () => M("store"),
|
|
430
|
+
leftIcon: /* @__PURE__ */ C(ae, { className: "h-4 w-4" }),
|
|
422
431
|
children: "Browse Store"
|
|
423
432
|
})
|
|
424
433
|
})
|
|
425
434
|
] }),
|
|
426
|
-
X && /* @__PURE__ */
|
|
427
|
-
let
|
|
428
|
-
return /* @__PURE__ */
|
|
435
|
+
X && /* @__PURE__ */ C(({ pkg: e, onClose: i }) => {
|
|
436
|
+
let d = I(e), f = P(e), p = e.bindings ?? {};
|
|
437
|
+
return /* @__PURE__ */ C("div", {
|
|
429
438
|
className: "fixed inset-0 bg-black/50 flex items-center justify-center z-50",
|
|
430
|
-
children: /* @__PURE__ */
|
|
439
|
+
children: /* @__PURE__ */ w("div", {
|
|
431
440
|
className: "bg-bg-surface rounded-lg shadow-xl max-w-2xl w-full mx-4 max-h-[90vh] overflow-y-auto",
|
|
432
441
|
children: [
|
|
433
|
-
/* @__PURE__ */
|
|
442
|
+
/* @__PURE__ */ C("div", {
|
|
434
443
|
className: "p-6 border-b border-border-subtle",
|
|
435
|
-
children: /* @__PURE__ */
|
|
444
|
+
children: /* @__PURE__ */ w("div", {
|
|
436
445
|
className: "flex items-start justify-between",
|
|
437
|
-
children: [/* @__PURE__ */
|
|
446
|
+
children: [/* @__PURE__ */ w("div", {
|
|
438
447
|
className: "flex items-start gap-3",
|
|
439
|
-
children: [/* @__PURE__ */
|
|
448
|
+
children: [/* @__PURE__ */ C("div", {
|
|
440
449
|
className: "p-3 rounded-lg bg-bg-sunken text-3xl",
|
|
441
|
-
children:
|
|
442
|
-
}), /* @__PURE__ */
|
|
450
|
+
children: d.icon
|
|
451
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("h2", {
|
|
443
452
|
className: "text-xl font-bold",
|
|
444
|
-
children:
|
|
445
|
-
}), /* @__PURE__ */
|
|
453
|
+
children: h(e.package) || f
|
|
454
|
+
}), /* @__PURE__ */ C("p", {
|
|
446
455
|
className: "text-sm text-text-secondary font-mono",
|
|
447
|
-
children:
|
|
456
|
+
children: f
|
|
448
457
|
})] })]
|
|
449
|
-
}), /* @__PURE__ */
|
|
458
|
+
}), /* @__PURE__ */ C(a, {
|
|
450
459
|
variant: "ghost",
|
|
451
460
|
size: "sm",
|
|
452
461
|
"aria-label": "Close",
|
|
453
|
-
onClick:
|
|
462
|
+
onClick: i,
|
|
454
463
|
children: "×"
|
|
455
464
|
})]
|
|
456
465
|
})
|
|
457
466
|
}),
|
|
458
|
-
/* @__PURE__ */
|
|
467
|
+
/* @__PURE__ */ w("div", {
|
|
459
468
|
className: "p-6 space-y-6",
|
|
460
469
|
children: [
|
|
461
|
-
/* @__PURE__ */
|
|
470
|
+
/* @__PURE__ */ w(o, { children: [/* @__PURE__ */ C(l, { children: /* @__PURE__ */ C(u, {
|
|
462
471
|
className: "text-base",
|
|
463
472
|
children: "Version Information"
|
|
464
|
-
}) }), /* @__PURE__ */
|
|
473
|
+
}) }), /* @__PURE__ */ w(s, {
|
|
465
474
|
className: "space-y-4",
|
|
466
|
-
children: [/* @__PURE__ */
|
|
475
|
+
children: [/* @__PURE__ */ w("div", {
|
|
467
476
|
className: "grid grid-cols-2 gap-4",
|
|
468
|
-
children: [/* @__PURE__ */
|
|
477
|
+
children: [/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
469
478
|
className: "text-sm text-text-secondary",
|
|
470
479
|
children: "Installed Version"
|
|
471
|
-
}), /* @__PURE__ */
|
|
480
|
+
}), /* @__PURE__ */ w("p", {
|
|
472
481
|
className: "font-mono font-medium",
|
|
473
482
|
children: ["v", e.installedVersion]
|
|
474
|
-
})] }), e.package && /* @__PURE__ */
|
|
483
|
+
})] }), e.package && /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
475
484
|
className: "text-sm text-text-secondary",
|
|
476
485
|
children: "Latest Version"
|
|
477
|
-
}), /* @__PURE__ */
|
|
486
|
+
}), /* @__PURE__ */ w("p", {
|
|
478
487
|
className: "font-mono font-medium",
|
|
479
488
|
children: ["v", e.package.version]
|
|
480
489
|
})] })]
|
|
481
|
-
}), /* @__PURE__ */
|
|
490
|
+
}), /* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
482
491
|
className: "text-sm text-text-secondary mb-2",
|
|
483
492
|
children: "Installation Mode"
|
|
484
|
-
}), /* @__PURE__ */
|
|
493
|
+
}), /* @__PURE__ */ w("div", {
|
|
485
494
|
className: "flex items-center gap-2",
|
|
486
495
|
children: [
|
|
487
496
|
$(e.mode),
|
|
488
|
-
/* @__PURE__ */
|
|
497
|
+
/* @__PURE__ */ C("span", {
|
|
489
498
|
className: "font-medium",
|
|
490
499
|
children: e.mode
|
|
491
500
|
}),
|
|
492
|
-
/* @__PURE__ */
|
|
501
|
+
/* @__PURE__ */ C("span", {
|
|
493
502
|
className: "text-sm text-text-secondary",
|
|
494
503
|
children: e.mode === "LINKED" ? "- Receives updates automatically" : "- Independent copy, no auto-updates"
|
|
495
504
|
})
|
|
496
505
|
]
|
|
497
506
|
})] })]
|
|
498
507
|
})] }),
|
|
499
|
-
/* @__PURE__ */
|
|
508
|
+
/* @__PURE__ */ w(o, { children: [/* @__PURE__ */ w(l, { children: [/* @__PURE__ */ w(u, {
|
|
500
509
|
className: "text-base flex items-center gap-2",
|
|
501
|
-
children: [/* @__PURE__ */
|
|
502
|
-
}), /* @__PURE__ */
|
|
510
|
+
children: [/* @__PURE__ */ C(E, { className: "h-4 w-4" }), "Environment Version Pins"]
|
|
511
|
+
}), /* @__PURE__ */ C(c, { children: "Pin specific versions for each environment" })] }), /* @__PURE__ */ C(s, { children: /* @__PURE__ */ C("div", {
|
|
503
512
|
className: "space-y-3",
|
|
504
|
-
children:
|
|
505
|
-
let
|
|
506
|
-
return /* @__PURE__ */
|
|
513
|
+
children: j.map((t) => {
|
|
514
|
+
let i = R(e, t);
|
|
515
|
+
return /* @__PURE__ */ w("div", {
|
|
507
516
|
className: "flex items-center justify-between p-3 bg-bg-sunken rounded-lg",
|
|
508
|
-
children: [/* @__PURE__ */
|
|
517
|
+
children: [/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
509
518
|
className: "font-medium",
|
|
510
519
|
children: t
|
|
511
|
-
}), /* @__PURE__ */
|
|
520
|
+
}), /* @__PURE__ */ C("p", {
|
|
512
521
|
className: "text-sm text-text-secondary font-mono",
|
|
513
|
-
children:
|
|
514
|
-
})] }), /* @__PURE__ */
|
|
522
|
+
children: i ? `v${i}` : "Using latest"
|
|
523
|
+
})] }), /* @__PURE__ */ C("div", {
|
|
515
524
|
className: "flex gap-2",
|
|
516
|
-
children:
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
525
|
+
children: i ? /* @__PURE__ */ C(r, {
|
|
526
|
+
permission: n.STORE_UPDATE,
|
|
527
|
+
children: /* @__PURE__ */ C(a, {
|
|
528
|
+
variant: "outline",
|
|
529
|
+
size: "sm",
|
|
530
|
+
onClick: () => void Q(e, t, ""),
|
|
531
|
+
children: "Unpin"
|
|
532
|
+
})
|
|
533
|
+
}) : /* @__PURE__ */ C(r, {
|
|
534
|
+
permission: n.STORE_UPDATE,
|
|
535
|
+
children: /* @__PURE__ */ C(a, {
|
|
536
|
+
variant: "outline",
|
|
537
|
+
size: "sm",
|
|
538
|
+
onClick: () => void Q(e, t, e.installedVersion),
|
|
539
|
+
children: "Pin Current"
|
|
540
|
+
})
|
|
526
541
|
})
|
|
527
542
|
})]
|
|
528
543
|
}, t);
|
|
529
544
|
})
|
|
530
545
|
}) })] }),
|
|
531
|
-
Object.keys(
|
|
546
|
+
Object.keys(p).length > 0 && /* @__PURE__ */ w(o, { children: [/* @__PURE__ */ C(l, { children: /* @__PURE__ */ w(u, {
|
|
532
547
|
className: "text-base flex items-center gap-2",
|
|
533
|
-
children: [/* @__PURE__ */
|
|
534
|
-
}) }), /* @__PURE__ */
|
|
548
|
+
children: [/* @__PURE__ */ C(le, { className: "h-4 w-4" }), "Configuration Bindings"]
|
|
549
|
+
}) }), /* @__PURE__ */ C(s, { children: /* @__PURE__ */ C("div", {
|
|
535
550
|
className: "space-y-2",
|
|
536
|
-
children: Object.entries(
|
|
551
|
+
children: Object.entries(p).map(([e, t]) => /* @__PURE__ */ w("div", {
|
|
537
552
|
className: "flex justify-between p-2 bg-bg-sunken rounded",
|
|
538
|
-
children: [/* @__PURE__ */
|
|
553
|
+
children: [/* @__PURE__ */ C("span", {
|
|
539
554
|
className: "font-mono text-sm",
|
|
540
555
|
children: e
|
|
541
|
-
}), /* @__PURE__ */
|
|
556
|
+
}), /* @__PURE__ */ C("span", {
|
|
542
557
|
className: "font-mono text-sm text-text-secondary",
|
|
543
558
|
children: typeof t == "string" ? t : JSON.stringify(t)
|
|
544
559
|
})]
|
|
545
560
|
}, e))
|
|
546
561
|
}) })] }),
|
|
547
|
-
/* @__PURE__ */
|
|
562
|
+
/* @__PURE__ */ w(o, { children: [/* @__PURE__ */ C(l, { children: /* @__PURE__ */ C(u, {
|
|
548
563
|
className: "text-base",
|
|
549
564
|
children: "Metadata"
|
|
550
|
-
}) }), /* @__PURE__ */
|
|
565
|
+
}) }), /* @__PURE__ */ C(s, { children: /* @__PURE__ */ w("div", {
|
|
551
566
|
className: "grid grid-cols-2 gap-4 text-sm",
|
|
552
567
|
children: [
|
|
553
|
-
/* @__PURE__ */
|
|
568
|
+
/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
554
569
|
className: "text-text-secondary",
|
|
555
570
|
children: "Installed At"
|
|
556
|
-
}), /* @__PURE__ */
|
|
571
|
+
}), /* @__PURE__ */ C("p", {
|
|
557
572
|
className: "font-medium",
|
|
558
573
|
children: t(e.installedAt)
|
|
559
574
|
})] }),
|
|
560
|
-
/* @__PURE__ */
|
|
575
|
+
/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
561
576
|
className: "text-text-secondary",
|
|
562
577
|
children: "Installed By"
|
|
563
|
-
}), /* @__PURE__ */
|
|
578
|
+
}), /* @__PURE__ */ C("p", {
|
|
564
579
|
className: "font-medium",
|
|
565
580
|
children: e.installedBy
|
|
566
581
|
})] }),
|
|
567
|
-
/* @__PURE__ */
|
|
582
|
+
/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
568
583
|
className: "text-text-secondary",
|
|
569
584
|
children: "Package ID"
|
|
570
|
-
}), /* @__PURE__ */
|
|
585
|
+
}), /* @__PURE__ */ C("p", {
|
|
571
586
|
className: "font-mono text-xs",
|
|
572
587
|
children: e.packageId
|
|
573
588
|
})] }),
|
|
574
|
-
/* @__PURE__ */
|
|
589
|
+
/* @__PURE__ */ w("div", { children: [/* @__PURE__ */ C("p", {
|
|
575
590
|
className: "text-text-secondary",
|
|
576
591
|
children: "Installation ID"
|
|
577
|
-
}), /* @__PURE__ */
|
|
592
|
+
}), /* @__PURE__ */ C("p", {
|
|
578
593
|
className: "font-mono text-xs",
|
|
579
594
|
children: e.id
|
|
580
595
|
})] })
|
|
@@ -582,23 +597,26 @@ var L = () => {
|
|
|
582
597
|
}) })] })
|
|
583
598
|
]
|
|
584
599
|
}),
|
|
585
|
-
/* @__PURE__ */
|
|
600
|
+
/* @__PURE__ */ w("div", {
|
|
586
601
|
className: "p-6 border-t border-border-subtle flex justify-between",
|
|
587
|
-
children: [/* @__PURE__ */
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
602
|
+
children: [/* @__PURE__ */ C(r, {
|
|
603
|
+
permission: n.STORE_DELETE,
|
|
604
|
+
children: /* @__PURE__ */ w(a, {
|
|
605
|
+
variant: "destructive",
|
|
606
|
+
onClick: () => void Z(e),
|
|
607
|
+
children: [/* @__PURE__ */ C(k, { className: "h-4 w-4 mr-2" }), "Uninstall"]
|
|
608
|
+
})
|
|
609
|
+
}), /* @__PURE__ */ w("div", {
|
|
592
610
|
className: "flex gap-2",
|
|
593
|
-
children: [/* @__PURE__ */
|
|
594
|
-
to:
|
|
595
|
-
children: /* @__PURE__ */
|
|
611
|
+
children: [/* @__PURE__ */ C(re, {
|
|
612
|
+
to: N(`store/package/${f}`),
|
|
613
|
+
children: /* @__PURE__ */ C(a, {
|
|
596
614
|
variant: "outline",
|
|
597
615
|
children: "View in Store"
|
|
598
616
|
})
|
|
599
|
-
}), /* @__PURE__ */
|
|
617
|
+
}), /* @__PURE__ */ C(a, {
|
|
600
618
|
variant: "outline",
|
|
601
|
-
onClick:
|
|
619
|
+
onClick: i,
|
|
602
620
|
children: "Close"
|
|
603
621
|
})]
|
|
604
622
|
})]
|
|
@@ -614,6 +632,6 @@ var L = () => {
|
|
|
614
632
|
});
|
|
615
633
|
};
|
|
616
634
|
//#endregion
|
|
617
|
-
export {
|
|
635
|
+
export { z as InstalledPackagesPage };
|
|
618
636
|
|
|
619
637
|
//# sourceMappingURL=InstalledPackagesPage.js.map
|