@burdenoff/microfe-botmanor 2026.1109.1 → 2026.1109.2

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.
@@ -9,15 +9,15 @@ import { Suspense as o, lazy as s } from "react";
9
9
  import { jsx as c, jsxs as l } from "react/jsx-runtime";
10
10
  import { Navigate as u, Route as d, Routes as f, useLocation as p } from "react-router";
11
11
  // src/botlit/BotlitRoutes.tsx
12
- var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.BotsListPage }))), h = s(() => import("./pages/BotDetailPage.js").then((e) => ({ default: e.BotDetailPage }))), g = s(() => import("./pages/AgentsListPage.js").then((e) => ({ default: e.AgentsListPage }))), _ = s(() => import("./pages/AgentApprovalsPage.js").then((e) => ({ default: e.AgentApprovalsPage }))), v = s(() => import("./pages/AgentDetailPage.js").then((e) => ({ default: e.AgentDetailPage }))), y = s(() => import("./pages/AgentBuilderPage.js").then((e) => ({ default: e.AgentBuilderPage }))), b = s(() => import("./pages/KnowledgeBasesPage.js").then((e) => ({ default: e.KnowledgeBasesPage }))), x = s(() => import("./pages/KnowledgeBaseDetailPage.js").then((e) => ({ default: e.KnowledgeBaseDetailPage }))), S = s(() => import("./pages/RetrievalProfilesPage.js").then((e) => ({ default: e.RetrievalProfilesPage }))), C = s(() => import("./pages/RetrievalProfileDetailPage.js").then((e) => ({ default: e.RetrievalProfileDetailPage }))), w = s(() => import("./pages/MCPServersPage.js").then((e) => ({ default: e.MCPServersPage }))), T = s(() => import("./pages/MCPServerDetailPage.js").then((e) => ({ default: e.MCPServerDetailPage }))), E = s(() => import("./pages/A2ARegistryPage.js").then((e) => ({ default: e.A2ARegistryPage }))), D = s(() => import("./pages/A2AAgentDetailPage.js").then((e) => ({ default: e.A2AAgentDetailPage }))), O = s(() => import("./pages/ChannelsPage.js").then((e) => ({ default: e.ChannelsPage }))), k = s(() => import("./pages/ChannelDetailPage.js").then((e) => ({ default: e.ChannelDetailPage }))), A = s(() => import("./pages/ChannelRoutesPage.js").then((e) => ({ default: e.ChannelRoutesPage }))), j = s(() => import("./pages/PoliciesPage.js").then((e) => ({ default: e.PoliciesPage }))), M = s(() => import("./pages/PolicyDetailPage.js").then((e) => ({ default: e.PolicyDetailPage }))), N = s(() => import("./pages/SkillsPage.js").then((e) => ({ default: e.SkillsPage }))), P = s(() => import("./pages/SkillDetailPage.js").then((e) => ({ default: e.SkillDetailPage }))), F = s(() => import("./pages/PromptTemplatesPage.js").then((e) => ({ default: e.PromptTemplatesPage }))), I = s(() => import("./pages/PromptTemplateDetailPage.js").then((e) => ({ default: e.PromptTemplateDetailPage }))), L = s(() => import("./pages/PromptStudioPage.js").then((e) => ({ default: e.PromptStudioPage }))), R = s(() => import("./pages/ExecutionsPage.js").then((e) => ({ default: e.ExecutionsPage }))), z = s(() => import("./pages/ExecutionDetailPage.js").then((e) => ({ default: e.ExecutionDetailPage }))), B = s(() => import("./pages/AiOperationsPage.js").then((e) => ({ default: e.AiOperationsPage }))), V = s(() => import("./pages/BucketsPage.js").then((e) => ({ default: e.BucketsPage }))), H = s(() => import("./pages/StorePage.js").then((e) => ({ default: e.StorePage }))), U = s(() => import("./pages/StorePackageDetailPage.js").then((e) => ({ default: e.StorePackageDetailPage }))), W = s(() => import("./pages/InstalledPackagesPage.js").then((e) => ({ default: e.InstalledPackagesPage }))), G = s(() => import("./pages/SettingsPage.js").then((e) => ({ default: e.SettingsPage }))), K = s(() => import("./pages/ChatPage.js").then((e) => ({ default: e.ChatPage }))), q = () => {
13
- let { basePath: s, isStandalone: q } = e(), J = p(), Y = i(), X = (e, t, n, i, a) => /* @__PURE__ */ c(r, {
12
+ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.BotsListPage }))), h = s(() => import("./pages/BotDetailPage.js").then((e) => ({ default: e.BotDetailPage }))), g = s(() => import("./pages/AgentsListPage.js").then((e) => ({ default: e.AgentsListPage }))), _ = s(() => import("./pages/AgentApprovalsPage.js").then((e) => ({ default: e.AgentApprovalsPage }))), v = s(() => import("./pages/AgentDetailPage.js").then((e) => ({ default: e.AgentDetailPage }))), y = s(() => import("./pages/AgentBuilderPage.js").then((e) => ({ default: e.AgentBuilderPage }))), b = s(() => import("./pages/KnowledgeBasesPage.js").then((e) => ({ default: e.KnowledgeBasesPage }))), x = s(() => import("./pages/KnowledgeBaseDetailPage.js").then((e) => ({ default: e.KnowledgeBaseDetailPage }))), S = s(() => import("./pages/RetrievalProfilesPage.js").then((e) => ({ default: e.RetrievalProfilesPage }))), C = s(() => import("./pages/RetrievalProfileDetailPage.js").then((e) => ({ default: e.RetrievalProfileDetailPage }))), w = s(() => import("./pages/MCPServersPage.js").then((e) => ({ default: e.MCPServersPage }))), T = s(() => import("./pages/MCPServerDetailPage.js").then((e) => ({ default: e.MCPServerDetailPage }))), E = s(() => import("./pages/A2ARegistryPage.js").then((e) => ({ default: e.A2ARegistryPage }))), D = s(() => import("./pages/A2AAgentDetailPage.js").then((e) => ({ default: e.A2AAgentDetailPage }))), O = s(() => import("./pages/ChannelsPage.js").then((e) => ({ default: e.ChannelsPage }))), k = s(() => import("./pages/ChannelDetailPage.js").then((e) => ({ default: e.ChannelDetailPage }))), A = s(() => import("./pages/ChannelRoutesPage.js").then((e) => ({ default: e.ChannelRoutesPage }))), j = s(() => import("./pages/PoliciesPage.js").then((e) => ({ default: e.PoliciesPage }))), M = s(() => import("./pages/PolicyDetailPage.js").then((e) => ({ default: e.PolicyDetailPage }))), N = s(() => import("./pages/SkillsPage.js").then((e) => ({ default: e.SkillsPage }))), P = s(() => import("./pages/SkillDetailPage.js").then((e) => ({ default: e.SkillDetailPage }))), F = s(() => import("./pages/PromptTemplatesPage.js").then((e) => ({ default: e.PromptTemplatesPage }))), I = s(() => import("./pages/PromptTemplateDetailPage.js").then((e) => ({ default: e.PromptTemplateDetailPage }))), L = s(() => import("./pages/PromptStudioPage.js").then((e) => ({ default: e.PromptStudioPage }))), R = s(() => import("./pages/ExecutionsPage.js").then((e) => ({ default: e.ExecutionsPage }))), z = s(() => import("./pages/ExecutionDetailPage.js").then((e) => ({ default: e.ExecutionDetailPage }))), B = s(() => import("./pages/AiOperationsPage.js").then((e) => ({ default: e.AiOperationsPage }))), V = s(() => import("./pages/BucketsPage.js").then((e) => ({ default: e.BucketsPage }))), H = s(() => import("./pages/BucketDetailPage.js").then((e) => ({ default: e.BucketDetailPage }))), U = s(() => import("./pages/StorePage.js").then((e) => ({ default: e.StorePage }))), W = s(() => import("./pages/StorePackageDetailPage.js").then((e) => ({ default: e.StorePackageDetailPage }))), G = s(() => import("./pages/InstalledPackagesPage.js").then((e) => ({ default: e.InstalledPackagesPage }))), K = s(() => import("./pages/SettingsPage.js").then((e) => ({ default: e.SettingsPage }))), q = s(() => import("./pages/ChatPage.js").then((e) => ({ default: e.ChatPage }))), J = () => {
13
+ let { basePath: s, isStandalone: J } = e(), Y = p(), X = i(), Z = (e, t, n, i, a) => /* @__PURE__ */ c(r, {
14
14
  permission: e,
15
15
  title: t,
16
16
  backTo: n,
17
17
  backLabel: i,
18
18
  children: a
19
- }), Z = Y("permissions.required.back", "Go back"), Q = s === "/" ? "" : s.replace(/\/$/, "");
20
- return Q && !q && !(J.pathname === Q || J.pathname.startsWith(Q + "/")) ? null : /* @__PURE__ */ c("div", {
19
+ }), Q = X("permissions.required.back", "Go back"), $ = s === "/" ? "" : s.replace(/\/$/, "");
20
+ return $ && !J && !(Y.pathname === $ || Y.pathname.startsWith($ + "/")) ? null : /* @__PURE__ */ c("div", {
21
21
  className: "flex flex-col min-h-full bg-bg-surface",
22
22
  children: /* @__PURE__ */ c(o, {
23
23
  fallback: /* @__PURE__ */ c(t, {}),
@@ -29,7 +29,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
29
29
  /* @__PURE__ */ c(d, {
30
30
  path: "home",
31
31
  element: /* @__PURE__ */ c(u, {
32
- to: "/",
32
+ to: $ || "/",
33
33
  replace: !0
34
34
  })
35
35
  }),
@@ -39,7 +39,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
39
39
  }),
40
40
  /* @__PURE__ */ c(d, {
41
41
  path: "bots/new",
42
- element: X(n.APP_CREATE, Y("botlit.botsList.actions.createBot", "Create Bot"), "bots", Z, /* @__PURE__ */ c(h, { isNew: !0 }))
42
+ element: Z(n.APP_CREATE, X("botlit.botsList.actions.createBot", "Create Bot"), "bots", Q, /* @__PURE__ */ c(h, { isNew: !0 }))
43
43
  }),
44
44
  /* @__PURE__ */ c(d, {
45
45
  path: "bots/:botId",
@@ -47,7 +47,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
47
47
  }),
48
48
  /* @__PURE__ */ c(d, {
49
49
  path: "bots/:botId/edit",
50
- element: X(n.APP_UPDATE, Y("botlit.botsList.menu.editBot", "Edit Bot"), "bots", Z, /* @__PURE__ */ c(h, { isEditing: !0 }))
50
+ element: Z(n.APP_UPDATE, X("botlit.botsList.menu.editBot", "Edit Bot"), "bots", Q, /* @__PURE__ */ c(h, { isEditing: !0 }))
51
51
  }),
52
52
  /* @__PURE__ */ c(d, {
53
53
  path: "bots/:botId/agents",
@@ -55,7 +55,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
55
55
  }),
56
56
  /* @__PURE__ */ c(d, {
57
57
  path: "bots/:botId/agents/new",
58
- element: X(n.AGENT_CREATE, Y("botlit.agentsList.actions.createAgent", "Create Agent"), "agents", Z, /* @__PURE__ */ c(y, {}))
58
+ element: Z(n.AGENT_CREATE, X("botlit.agentsList.actions.createAgent", "Create Agent"), "agents", Q, /* @__PURE__ */ c(y, {}))
59
59
  }),
60
60
  /* @__PURE__ */ c(d, {
61
61
  path: "bots/:botId/agents/:agentId",
@@ -63,7 +63,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
63
63
  }),
64
64
  /* @__PURE__ */ c(d, {
65
65
  path: "bots/:botId/agents/:agentId/edit",
66
- element: X(n.AGENT_UPDATE, Y("botlit.agentsList.menu.editAgent", "Edit Agent"), "agents", Z, /* @__PURE__ */ c(y, {}))
66
+ element: Z(n.AGENT_UPDATE, X("botlit.agentsList.menu.editAgent", "Edit Agent"), "agents", Q, /* @__PURE__ */ c(y, {}))
67
67
  }),
68
68
  /* @__PURE__ */ c(d, {
69
69
  path: "bots/:botId/knowledge",
@@ -79,7 +79,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
79
79
  }),
80
80
  /* @__PURE__ */ c(d, {
81
81
  path: "agents/new",
82
- element: X(n.AGENT_CREATE, Y("botlit.agentsList.actions.createAgent", "Create Agent"), "agents", Z, /* @__PURE__ */ c(y, {}))
82
+ element: Z(n.AGENT_CREATE, X("botlit.agentsList.actions.createAgent", "Create Agent"), "agents", Q, /* @__PURE__ */ c(y, {}))
83
83
  }),
84
84
  /* @__PURE__ */ c(d, {
85
85
  path: "agents/approvals",
@@ -91,25 +91,11 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
91
91
  }),
92
92
  /* @__PURE__ */ c(d, {
93
93
  path: "agents/:agentId/edit",
94
- element: X(n.AGENT_UPDATE, Y("botlit.agentsList.menu.editAgent", "Edit Agent"), "agents", Z, /* @__PURE__ */ c(y, {}))
94
+ element: Z(n.AGENT_UPDATE, X("botlit.agentsList.menu.editAgent", "Edit Agent"), "agents", Q, /* @__PURE__ */ c(y, {}))
95
95
  }),
96
96
  /* @__PURE__ */ c(d, {
97
97
  path: "agents/:agentId/chat",
98
- element: X(n.AGENT_EXECUTE, Y("botlit.chat.title", "AI Chat"), "agents", Z, /* @__PURE__ */ c(K, {}))
99
- }),
100
- /* @__PURE__ */ c(d, {
101
- path: "conversations",
102
- element: /* @__PURE__ */ c(u, {
103
- to: "/conversations",
104
- replace: !0
105
- })
106
- }),
107
- /* @__PURE__ */ c(d, {
108
- path: "conversations/:conversationId",
109
- element: /* @__PURE__ */ c(u, {
110
- to: "/conversations",
111
- replace: !0
112
- })
98
+ element: Z(n.AGENT_EXECUTE, X("botlit.chat.title", "AI Chat"), "agents", Q, /* @__PURE__ */ c(q, {}))
113
99
  }),
114
100
  /* @__PURE__ */ c(d, {
115
101
  path: "knowledge",
@@ -117,7 +103,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
117
103
  }),
118
104
  /* @__PURE__ */ c(d, {
119
105
  path: "knowledge/new",
120
- element: X(n.KNOWLEDGE_CREATE, Y("botlit.knowledge.actions.create", "Create Knowledge Base"), "knowledge", Z, /* @__PURE__ */ c(x, { isNew: !0 }))
106
+ element: Z(n.KNOWLEDGE_CREATE, X("botlit.knowledge.actions.create", "Create Knowledge Base"), "knowledge", Q, /* @__PURE__ */ c(x, { isNew: !0 }))
121
107
  }),
122
108
  /* @__PURE__ */ c(d, {
123
109
  path: "knowledge/:kbId",
@@ -129,7 +115,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
129
115
  }),
130
116
  /* @__PURE__ */ c(d, {
131
117
  path: "retrieval-profiles/new",
132
- element: X(n.RETRIEVAL_PROFILE_CREATE, Y("botlit.retrievalProfiles.actions.create", "Create Retrieval Profile"), "retrieval-profiles", Z, /* @__PURE__ */ c(C, { isNew: !0 }))
118
+ element: Z(n.RETRIEVAL_PROFILE_CREATE, X("botlit.retrievalProfiles.actions.create", "Create Retrieval Profile"), "retrieval-profiles", Q, /* @__PURE__ */ c(C, { isNew: !0 }))
133
119
  }),
134
120
  /* @__PURE__ */ c(d, {
135
121
  path: "retrieval-profiles/:profileId",
@@ -141,7 +127,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
141
127
  }),
142
128
  /* @__PURE__ */ c(d, {
143
129
  path: "mcp/new",
144
- element: X(n.MCP_CREATE, Y("botlit.mcpServers.actions.add", "Add MCP Server"), "mcp", Z, /* @__PURE__ */ c(T, { isNew: !0 }))
130
+ element: Z(n.MCP_CREATE, X("botlit.mcpServers.actions.add", "Add MCP Server"), "mcp", Q, /* @__PURE__ */ c(T, { isNew: !0 }))
145
131
  }),
146
132
  /* @__PURE__ */ c(d, {
147
133
  path: "mcp/:serverId",
@@ -153,7 +139,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
153
139
  }),
154
140
  /* @__PURE__ */ c(d, {
155
141
  path: "a2a/register",
156
- element: X(n.A2A_REGISTRY_CREATE, Y("botlit.a2aRegistry.actions.registerAgent", "Register Agent"), "a2a", Z, /* @__PURE__ */ c(D, { isNew: !0 }))
142
+ element: Z(n.A2A_REGISTRY_CREATE, X("botlit.a2aRegistry.actions.registerAgent", "Register Agent"), "a2a", Q, /* @__PURE__ */ c(D, { isNew: !0 }))
157
143
  }),
158
144
  /* @__PURE__ */ c(d, {
159
145
  path: "a2a/:agentId",
@@ -165,7 +151,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
165
151
  }),
166
152
  /* @__PURE__ */ c(d, {
167
153
  path: "channels/new",
168
- element: X(n.CHANNEL_CREATE, Y("botlit.channels.actions.addChannel", "Add Channel"), "channels", Z, /* @__PURE__ */ c(k, { isNew: !0 }))
154
+ element: Z(n.CHANNEL_CREATE, X("botlit.channels.actions.addChannel", "Add Channel"), "channels", Q, /* @__PURE__ */ c(k, { isNew: !0 }))
169
155
  }),
170
156
  /* @__PURE__ */ c(d, {
171
157
  path: "channels/routes",
@@ -181,7 +167,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
181
167
  }),
182
168
  /* @__PURE__ */ c(d, {
183
169
  path: "policies/new",
184
- element: X(n.POLICY_CREATE, Y("botlit.policies.actions.createPolicy", "Create Policy"), "policies", Z, /* @__PURE__ */ c(M, { isNew: !0 }))
170
+ element: Z(n.POLICY_CREATE, X("botlit.policies.actions.createPolicy", "Create Policy"), "policies", Q, /* @__PURE__ */ c(M, { isNew: !0 }))
185
171
  }),
186
172
  /* @__PURE__ */ c(d, {
187
173
  path: "policies/:policyId",
@@ -193,7 +179,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
193
179
  }),
194
180
  /* @__PURE__ */ c(d, {
195
181
  path: "skills/new",
196
- element: X(n.SKILL_CREATE, Y("botlit.skills.actions.create", "Create Skill"), "skills", Z, /* @__PURE__ */ c(P, { isNew: !0 }))
182
+ element: Z(n.SKILL_CREATE, X("botlit.skills.actions.create", "Create Skill"), "skills", Q, /* @__PURE__ */ c(P, { isNew: !0 }))
197
183
  }),
198
184
  /* @__PURE__ */ c(d, {
199
185
  path: "skills/:skillId",
@@ -205,7 +191,7 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
205
191
  }),
206
192
  /* @__PURE__ */ c(d, {
207
193
  path: "prompt-templates/new",
208
- element: X(n.PROMPT_TEMPLATE_CREATE, Y("botlit.promptTemplates.actions.create", "Create Template"), "prompt-templates", Z, /* @__PURE__ */ c(I, { isNew: !0 }))
194
+ element: Z(n.PROMPT_TEMPLATE_CREATE, X("botlit.promptTemplates.actions.create", "Create Template"), "prompt-templates", Q, /* @__PURE__ */ c(I, { isNew: !0 }))
209
195
  }),
210
196
  /* @__PURE__ */ c(d, {
211
197
  path: "prompt-templates/:templateId",
@@ -233,47 +219,50 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
233
219
  }),
234
220
  /* @__PURE__ */ c(d, {
235
221
  path: "buckets/new",
236
- element: /* @__PURE__ */ c(V, {})
222
+ element: /* @__PURE__ */ c(u, {
223
+ to: `${$}/buckets`,
224
+ replace: !0
225
+ })
237
226
  }),
238
227
  /* @__PURE__ */ c(d, {
239
228
  path: "buckets/:bucketId",
240
- element: /* @__PURE__ */ c(V, {})
229
+ element: /* @__PURE__ */ c(H, {})
241
230
  }),
242
231
  /* @__PURE__ */ c(d, {
243
232
  path: "store",
244
- element: /* @__PURE__ */ c(H, {})
233
+ element: /* @__PURE__ */ c(U, {})
245
234
  }),
246
235
  /* @__PURE__ */ c(d, {
247
236
  path: "store/installed",
248
- element: /* @__PURE__ */ c(W, {})
237
+ element: /* @__PURE__ */ c(G, {})
249
238
  }),
250
239
  /* @__PURE__ */ c(d, {
251
240
  path: "store/package/:slug",
252
- element: /* @__PURE__ */ c(U, {})
241
+ element: /* @__PURE__ */ c(W, {})
253
242
  }),
254
243
  /* @__PURE__ */ c(d, {
255
244
  path: "chat",
256
- element: X(n.AGENT_EXECUTE, Y("botlit.chat.title", "AI Chat"), "agents", Z, /* @__PURE__ */ c(K, {}))
245
+ element: Z(n.AGENT_EXECUTE, X("botlit.chat.title", "AI Chat"), "agents", Q, /* @__PURE__ */ c(q, {}))
257
246
  }),
258
247
  /* @__PURE__ */ c(d, {
259
248
  path: "chat/:agentId",
260
- element: X(n.AGENT_EXECUTE, Y("botlit.chat.title", "AI Chat"), "agents", Z, /* @__PURE__ */ c(K, {}))
249
+ element: Z(n.AGENT_EXECUTE, X("botlit.chat.title", "AI Chat"), "agents", Q, /* @__PURE__ */ c(q, {}))
261
250
  }),
262
251
  /* @__PURE__ */ c(d, {
263
252
  path: "settings",
264
- element: /* @__PURE__ */ c(G, {})
253
+ element: /* @__PURE__ */ c(K, {})
265
254
  }),
266
255
  /* @__PURE__ */ c(d, {
267
256
  path: "list",
268
257
  element: /* @__PURE__ */ c(u, {
269
- to: `${Q}/workflows/list`,
258
+ to: `${$}/workflows/list`,
270
259
  replace: !0
271
260
  })
272
261
  }),
273
262
  /* @__PURE__ */ c(d, {
274
263
  path: "*",
275
264
  element: /* @__PURE__ */ c(u, {
276
- to: "/",
265
+ to: $ || "/",
277
266
  replace: !0
278
267
  })
279
268
  })
@@ -281,6 +270,6 @@ var m = s(() => import("./pages/BotsListPage.js").then((e) => ({ default: e.Bots
281
270
  })
282
271
  });
283
272
  };
284
- export { q as BotlitRoutes };
273
+ export { J as BotlitRoutes };
285
274
 
286
275
  //# sourceMappingURL=BotlitRoutes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BotlitRoutes.js","names":["BotsListPage","lazy","m","BotDetailPage","AgentsListPage","AgentApprovalsPage","AgentDetailPage","AgentBuilderPage","KnowledgeBasesPage","KnowledgeBaseDetailPage","RetrievalProfilesPage","RetrievalProfileDetailPage","MCPServersPage","MCPServerDetailPage","A2ARegistryPage","A2AAgentDetailPage","ChannelsPage","ChannelDetailPage","ChannelRoutesPage","PoliciesPage","PolicyDetailPage","SkillsPage","SkillDetailPage","PromptTemplatesPage","PromptTemplateDetailPage","PromptStudioPage","ExecutionsPage","ExecutionDetailPage","AiOperationsPage","BucketsPage","StorePage","StorePackageDetailPage","InstalledPackagesPage","SettingsPage","ChatPage","BotlitRoutes","useBotlit","location","useLocation","t","useTr","gated","RequirePermission","element","back","normalizedBasePath","basePath","isStandalone","Suspense","RouteLoader","Routes","Route","DashboardPage","Navigate","BOTMANOR_PERMISSIONS"],"sources":["../../src/botlit/BotlitRoutes.tsx"],"sourcesContent":["/**\n * BotManor Routes\n * @module botlit\n */\n\nimport { type FC, type ReactElement, lazy, Suspense } from 'react';\nimport { Routes, Route, Navigate, useLocation } from 'react-router';\nimport { useBotlit } from './providers/BotlitProvider';\nimport { RouteLoader } from './components/RouteLoader';\nimport { BOTMANOR_PERMISSIONS, RequirePermission, type BotmanorPermission } from './permissions';\nimport { useTr } from '../shared/hooks/useTr';\n\n// Eager load - Dashboard (primary landing page)\nimport { DashboardPage } from './pages/DashboardPage';\n\n// Lazy loaded pages - Bots\nconst BotsListPage = lazy(() =>\n import('./pages/BotsListPage').then((m) => ({ default: m.BotsListPage }))\n);\nconst BotDetailPage = lazy(() =>\n import('./pages/BotDetailPage').then((m) => ({ default: m.BotDetailPage }))\n);\n\n// Lazy loaded pages - Agents\nconst AgentsListPage = lazy(() =>\n import('./pages/AgentsListPage').then((m) => ({ default: m.AgentsListPage }))\n);\nconst AgentApprovalsPage = lazy(() =>\n import('./pages/AgentApprovalsPage').then((m) => ({ default: m.AgentApprovalsPage }))\n);\nconst AgentDetailPage = lazy(() =>\n import('./pages/AgentDetailPage').then((m) => ({ default: m.AgentDetailPage }))\n);\nconst AgentBuilderPage = lazy(() =>\n import('./pages/AgentBuilderPage').then((m) => ({ default: m.AgentBuilderPage }))\n);\n\n// Lazy loaded pages - Knowledge Bases\nconst KnowledgeBasesPage = lazy(() =>\n import('./pages/KnowledgeBasesPage').then((m) => ({ default: m.KnowledgeBasesPage }))\n);\nconst KnowledgeBaseDetailPage = lazy(() =>\n import('./pages/KnowledgeBaseDetailPage').then((m) => ({ default: m.KnowledgeBaseDetailPage }))\n);\n\n// Lazy loaded pages - Retrieval Profiles\nconst RetrievalProfilesPage = lazy(() =>\n import('./pages/RetrievalProfilesPage').then((m) => ({ default: m.RetrievalProfilesPage }))\n);\nconst RetrievalProfileDetailPage = lazy(() =>\n import('./pages/RetrievalProfileDetailPage').then((m) => ({\n default: m.RetrievalProfileDetailPage,\n }))\n);\n\n// Lazy loaded pages - MCP Servers\nconst MCPServersPage = lazy(() =>\n import('./pages/MCPServersPage').then((m) => ({ default: m.MCPServersPage }))\n);\nconst MCPServerDetailPage = lazy(() =>\n import('./pages/MCPServerDetailPage').then((m) => ({ default: m.MCPServerDetailPage }))\n);\n\n// Lazy loaded pages - A2A Registry\nconst A2ARegistryPage = lazy(() =>\n import('./pages/A2ARegistryPage').then((m) => ({ default: m.A2ARegistryPage }))\n);\nconst A2AAgentDetailPage = lazy(() =>\n import('./pages/A2AAgentDetailPage').then((m) => ({ default: m.A2AAgentDetailPage }))\n);\n\n// Lazy loaded pages - Channels\nconst ChannelsPage = lazy(() =>\n import('./pages/ChannelsPage').then((m) => ({ default: m.ChannelsPage }))\n);\nconst ChannelDetailPage = lazy(() =>\n import('./pages/ChannelDetailPage').then((m) => ({ default: m.ChannelDetailPage }))\n);\nconst ChannelRoutesPage = lazy(() =>\n import('./pages/ChannelRoutesPage').then((m) => ({ default: m.ChannelRoutesPage }))\n);\n\n// Lazy loaded pages - Policies\nconst PoliciesPage = lazy(() =>\n import('./pages/PoliciesPage').then((m) => ({ default: m.PoliciesPage }))\n);\nconst PolicyDetailPage = lazy(() =>\n import('./pages/PolicyDetailPage').then((m) => ({ default: m.PolicyDetailPage }))\n);\n\n// Lazy loaded pages - Skills\nconst SkillsPage = lazy(() =>\n import('./pages/SkillsPage').then((m) => ({ default: m.SkillsPage }))\n);\nconst SkillDetailPage = lazy(() =>\n import('./pages/SkillDetailPage').then((m) => ({ default: m.SkillDetailPage }))\n);\n\n// Lazy loaded pages - Prompt Templates\nconst PromptTemplatesPage = lazy(() =>\n import('./pages/PromptTemplatesPage').then((m) => ({ default: m.PromptTemplatesPage }))\n);\nconst PromptTemplateDetailPage = lazy(() =>\n import('./pages/PromptTemplateDetailPage').then((m) => ({ default: m.PromptTemplateDetailPage }))\n);\nconst PromptStudioPage = lazy(() =>\n import('./pages/PromptStudioPage').then((m) => ({ default: m.PromptStudioPage }))\n);\n\n// Lazy loaded pages - Executions\nconst ExecutionsPage = lazy(() =>\n import('./pages/ExecutionsPage').then((m) => ({ default: m.ExecutionsPage }))\n);\nconst ExecutionDetailPage = lazy(() =>\n import('./pages/ExecutionDetailPage').then((m) => ({ default: m.ExecutionDetailPage }))\n);\n\n// Lazy loaded pages - AI Operations (supervisor decision feed, BOFF-3839)\nconst AiOperationsPage = lazy(() =>\n import('./pages/AiOperationsPage').then((m) => ({ default: m.AiOperationsPage }))\n);\n\n// Lazy loaded pages - Buckets\nconst BucketsPage = lazy(() =>\n import('./pages/BucketsPage').then((m) => ({ default: m.BucketsPage }))\n);\n\n// Lazy loaded pages - Store\nconst StorePage = lazy(() => import('./pages/StorePage').then((m) => ({ default: m.StorePage })));\nconst StorePackageDetailPage = lazy(() =>\n import('./pages/StorePackageDetailPage').then((m) => ({ default: m.StorePackageDetailPage }))\n);\nconst InstalledPackagesPage = lazy(() =>\n import('./pages/InstalledPackagesPage').then((m) => ({ default: m.InstalledPackagesPage }))\n);\n\n// Lazy loaded pages - Settings & Chat\nconst SettingsPage = lazy(() =>\n import('./pages/SettingsPage').then((m) => ({ default: m.SettingsPage }))\n);\nconst ChatPage = lazy(() => import('./pages/ChatPage').then((m) => ({ default: m.ChatPage })));\n\n// Loading fallback — the same skeleton `BotmanorRoot` paints while its\n// implementation chunk resolves, so the content region never switches loading\n// idioms (and never goes empty) between first paint and the page rendering.\n\nexport const BotlitRoutes: FC = () => {\n const { basePath, isStandalone } = useBotlit();\n const location = useLocation();\n const t = useTr();\n\n /**\n * Create, edit and chat routes are reachable by URL, so they are gated here\n * as well as at the buttons that link to them: a member without the\n * permission gets a clear \"no access\" state instead of a form the gateway\n * would refuse to save.\n */\n const gated = (\n permission: BotmanorPermission,\n title: string,\n backTo: string,\n backLabel: string,\n element: ReactElement\n ): ReactElement => (\n <RequirePermission permission={permission} title={title} backTo={backTo} backLabel={backLabel}>\n {element}\n </RequirePermission>\n );\n const back = t('permissions.required.back', 'Go back');\n\n // Normalize base path\n const normalizedBasePath = basePath === '/' ? '' : basePath.replace(/\\/$/, '');\n\n // Guard: Only render if path matches basePath (when integrated)\n if (normalizedBasePath && !isStandalone) {\n const pathMatches =\n location.pathname === normalizedBasePath ||\n location.pathname.startsWith(normalizedBasePath + '/');\n\n if (!pathMatches) {\n return null;\n }\n }\n\n return (\n <div className=\"flex flex-col min-h-full bg-bg-surface\">\n <Suspense fallback={<RouteLoader />}>\n <Routes>\n {/* Dashboard - Eager loaded */}\n <Route index element={<DashboardPage />} />\n <Route path=\"home\" element={<Navigate to=\"/\" replace />} />\n\n {/* Bots */}\n <Route path=\"bots\" element={<BotsListPage />} />\n <Route\n path=\"bots/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.APP_CREATE,\n t('botlit.botsList.actions.createBot', 'Create Bot'),\n 'bots',\n back,\n <BotDetailPage isNew />\n )}\n />\n <Route path=\"bots/:botId\" element={<BotDetailPage />} />\n <Route\n path=\"bots/:botId/edit\"\n element={gated(\n BOTMANOR_PERMISSIONS.APP_UPDATE,\n t('botlit.botsList.menu.editBot', 'Edit Bot'),\n 'bots',\n back,\n <BotDetailPage isEditing />\n )}\n />\n <Route path=\"bots/:botId/agents\" element={<AgentsListPage />} />\n <Route\n path=\"bots/:botId/agents/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_CREATE,\n t('botlit.agentsList.actions.createAgent', 'Create Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route path=\"bots/:botId/agents/:agentId\" element={<AgentDetailPage />} />\n <Route\n path=\"bots/:botId/agents/:agentId/edit\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_UPDATE,\n t('botlit.agentsList.menu.editAgent', 'Edit Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route path=\"bots/:botId/knowledge\" element={<KnowledgeBasesPage />} />\n <Route path=\"bots/:botId/knowledge/:kbId\" element={<KnowledgeBaseDetailPage />} />\n\n {/* Agents (global view) */}\n <Route path=\"agents\" element={<AgentsListPage />} />\n <Route\n path=\"agents/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_CREATE,\n t('botlit.agentsList.actions.createAgent', 'Create Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route path=\"agents/approvals\" element={<AgentApprovalsPage />} />\n <Route path=\"agents/:agentId\" element={<AgentDetailPage />} />\n <Route\n path=\"agents/:agentId/edit\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_UPDATE,\n t('botlit.agentsList.menu.editAgent', 'Edit Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route\n path=\"agents/:agentId/chat\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_EXECUTE,\n t('botlit.chat.title', 'AI Chat'),\n 'agents',\n back,\n <ChatPage />\n )}\n />\n\n {/* Conversations - Redirect to conversations microfe */}\n <Route path=\"conversations\" element={<Navigate to=\"/conversations\" replace />} />\n <Route\n path=\"conversations/:conversationId\"\n element={<Navigate to=\"/conversations\" replace />}\n />\n\n {/* Knowledge Bases */}\n <Route path=\"knowledge\" element={<KnowledgeBasesPage />} />\n <Route\n path=\"knowledge/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.KNOWLEDGE_CREATE,\n t('botlit.knowledge.actions.create', 'Create Knowledge Base'),\n 'knowledge',\n back,\n <KnowledgeBaseDetailPage isNew />\n )}\n />\n <Route path=\"knowledge/:kbId\" element={<KnowledgeBaseDetailPage />} />\n\n {/* Retrieval Profiles */}\n <Route path=\"retrieval-profiles\" element={<RetrievalProfilesPage />} />\n <Route\n path=\"retrieval-profiles/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.RETRIEVAL_PROFILE_CREATE,\n t('botlit.retrievalProfiles.actions.create', 'Create Retrieval Profile'),\n 'retrieval-profiles',\n back,\n <RetrievalProfileDetailPage isNew />\n )}\n />\n <Route path=\"retrieval-profiles/:profileId\" element={<RetrievalProfileDetailPage />} />\n\n {/* MCP Servers */}\n <Route path=\"mcp\" element={<MCPServersPage />} />\n <Route\n path=\"mcp/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.MCP_CREATE,\n t('botlit.mcpServers.actions.add', 'Add MCP Server'),\n 'mcp',\n back,\n <MCPServerDetailPage isNew />\n )}\n />\n <Route path=\"mcp/:serverId\" element={<MCPServerDetailPage />} />\n\n {/* A2A Registry */}\n <Route path=\"a2a\" element={<A2ARegistryPage />} />\n <Route\n path=\"a2a/register\"\n element={gated(\n BOTMANOR_PERMISSIONS.A2A_REGISTRY_CREATE,\n t('botlit.a2aRegistry.actions.registerAgent', 'Register Agent'),\n 'a2a',\n back,\n <A2AAgentDetailPage isNew />\n )}\n />\n <Route path=\"a2a/:agentId\" element={<A2AAgentDetailPage />} />\n\n {/* Channels */}\n <Route path=\"channels\" element={<ChannelsPage />} />\n <Route\n path=\"channels/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.CHANNEL_CREATE,\n t('botlit.channels.actions.addChannel', 'Add Channel'),\n 'channels',\n back,\n <ChannelDetailPage isNew />\n )}\n />\n <Route path=\"channels/routes\" element={<ChannelRoutesPage />} />\n <Route path=\"channels/:connectorId\" element={<ChannelDetailPage />} />\n\n {/* Policies & Guardrails */}\n <Route path=\"policies\" element={<PoliciesPage />} />\n <Route\n path=\"policies/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.POLICY_CREATE,\n t('botlit.policies.actions.createPolicy', 'Create Policy'),\n 'policies',\n back,\n <PolicyDetailPage isNew />\n )}\n />\n <Route path=\"policies/:policyId\" element={<PolicyDetailPage />} />\n\n {/* Skills */}\n <Route path=\"skills\" element={<SkillsPage />} />\n <Route\n path=\"skills/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.SKILL_CREATE,\n t('botlit.skills.actions.create', 'Create Skill'),\n 'skills',\n back,\n <SkillDetailPage isNew />\n )}\n />\n <Route path=\"skills/:skillId\" element={<SkillDetailPage />} />\n\n {/* Prompt Templates */}\n <Route path=\"prompt-templates\" element={<PromptTemplatesPage />} />\n <Route\n path=\"prompt-templates/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.PROMPT_TEMPLATE_CREATE,\n t('botlit.promptTemplates.actions.create', 'Create Template'),\n 'prompt-templates',\n back,\n <PromptTemplateDetailPage isNew />\n )}\n />\n <Route path=\"prompt-templates/:templateId\" element={<PromptTemplateDetailPage />} />\n\n {/* Prompt Studio (legacy) */}\n <Route path=\"prompts\" element={<PromptStudioPage />} />\n\n {/* Executions */}\n <Route path=\"executions\" element={<ExecutionsPage />} />\n <Route path=\"ai\" element={<AiOperationsPage />} />\n <Route path=\"executions/:executionId\" element={<ExecutionDetailPage />} />\n\n {/* Buckets */}\n <Route path=\"buckets\" element={<BucketsPage />} />\n <Route path=\"buckets/new\" element={<BucketsPage />} />\n <Route path=\"buckets/:bucketId\" element={<BucketsPage />} />\n\n {/* Store */}\n <Route path=\"store\" element={<StorePage />} />\n <Route path=\"store/installed\" element={<InstalledPackagesPage />} />\n <Route path=\"store/package/:slug\" element={<StorePackageDetailPage />} />\n\n {/* Chat */}\n <Route\n path=\"chat\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_EXECUTE,\n t('botlit.chat.title', 'AI Chat'),\n 'agents',\n back,\n <ChatPage />\n )}\n />\n <Route\n path=\"chat/:agentId\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_EXECUTE,\n t('botlit.chat.title', 'AI Chat'),\n 'agents',\n back,\n <ChatPage />\n )}\n />\n\n {/* Settings */}\n <Route path=\"settings\" element={<SettingsPage />} />\n\n {/* Workflow routes are owned by the shared app-shell WorkflowsRoot. */}\n <Route\n path=\"list\"\n element={<Navigate to={`${normalizedBasePath}/workflows/list`} replace />}\n />\n\n {/* Fallback */}\n <Route path=\"*\" element={<Navigate to=\"/\" replace />} />\n </Routes>\n </Suspense>\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"BotlitRoutes.js","names":["BotsListPage","lazy","m","BotDetailPage","AgentsListPage","AgentApprovalsPage","AgentDetailPage","AgentBuilderPage","KnowledgeBasesPage","KnowledgeBaseDetailPage","RetrievalProfilesPage","RetrievalProfileDetailPage","MCPServersPage","MCPServerDetailPage","A2ARegistryPage","A2AAgentDetailPage","ChannelsPage","ChannelDetailPage","ChannelRoutesPage","PoliciesPage","PolicyDetailPage","SkillsPage","SkillDetailPage","PromptTemplatesPage","PromptTemplateDetailPage","PromptStudioPage","ExecutionsPage","ExecutionDetailPage","AiOperationsPage","BucketsPage","BucketDetailPage","StorePage","StorePackageDetailPage","InstalledPackagesPage","SettingsPage","ChatPage","BotlitRoutes","useBotlit","location","useLocation","t","useTr","gated","RequirePermission","element","back","normalizedBasePath","basePath","isStandalone","Suspense","RouteLoader","Routes","Route","DashboardPage","Navigate","BOTMANOR_PERMISSIONS"],"sources":["../../src/botlit/BotlitRoutes.tsx"],"sourcesContent":["/**\n * BotManor Routes\n * @module botlit\n */\n\nimport { type FC, type ReactElement, lazy, Suspense } from 'react';\nimport { Routes, Route, Navigate, useLocation } from 'react-router';\nimport { useBotlit } from './providers/BotlitProvider';\nimport { RouteLoader } from './components/RouteLoader';\nimport { BOTMANOR_PERMISSIONS, RequirePermission, type BotmanorPermission } from './permissions';\nimport { useTr } from '../shared/hooks/useTr';\n\n// Eager load - Dashboard (primary landing page)\nimport { DashboardPage } from './pages/DashboardPage';\n\n// Lazy loaded pages - Bots\nconst BotsListPage = lazy(() =>\n import('./pages/BotsListPage').then((m) => ({ default: m.BotsListPage }))\n);\nconst BotDetailPage = lazy(() =>\n import('./pages/BotDetailPage').then((m) => ({ default: m.BotDetailPage }))\n);\n\n// Lazy loaded pages - Agents\nconst AgentsListPage = lazy(() =>\n import('./pages/AgentsListPage').then((m) => ({ default: m.AgentsListPage }))\n);\nconst AgentApprovalsPage = lazy(() =>\n import('./pages/AgentApprovalsPage').then((m) => ({ default: m.AgentApprovalsPage }))\n);\nconst AgentDetailPage = lazy(() =>\n import('./pages/AgentDetailPage').then((m) => ({ default: m.AgentDetailPage }))\n);\nconst AgentBuilderPage = lazy(() =>\n import('./pages/AgentBuilderPage').then((m) => ({ default: m.AgentBuilderPage }))\n);\n\n// Lazy loaded pages - Knowledge Bases\nconst KnowledgeBasesPage = lazy(() =>\n import('./pages/KnowledgeBasesPage').then((m) => ({ default: m.KnowledgeBasesPage }))\n);\nconst KnowledgeBaseDetailPage = lazy(() =>\n import('./pages/KnowledgeBaseDetailPage').then((m) => ({ default: m.KnowledgeBaseDetailPage }))\n);\n\n// Lazy loaded pages - Retrieval Profiles\nconst RetrievalProfilesPage = lazy(() =>\n import('./pages/RetrievalProfilesPage').then((m) => ({ default: m.RetrievalProfilesPage }))\n);\nconst RetrievalProfileDetailPage = lazy(() =>\n import('./pages/RetrievalProfileDetailPage').then((m) => ({\n default: m.RetrievalProfileDetailPage,\n }))\n);\n\n// Lazy loaded pages - MCP Servers\nconst MCPServersPage = lazy(() =>\n import('./pages/MCPServersPage').then((m) => ({ default: m.MCPServersPage }))\n);\nconst MCPServerDetailPage = lazy(() =>\n import('./pages/MCPServerDetailPage').then((m) => ({ default: m.MCPServerDetailPage }))\n);\n\n// Lazy loaded pages - A2A Registry\nconst A2ARegistryPage = lazy(() =>\n import('./pages/A2ARegistryPage').then((m) => ({ default: m.A2ARegistryPage }))\n);\nconst A2AAgentDetailPage = lazy(() =>\n import('./pages/A2AAgentDetailPage').then((m) => ({ default: m.A2AAgentDetailPage }))\n);\n\n// Lazy loaded pages - Channels\nconst ChannelsPage = lazy(() =>\n import('./pages/ChannelsPage').then((m) => ({ default: m.ChannelsPage }))\n);\nconst ChannelDetailPage = lazy(() =>\n import('./pages/ChannelDetailPage').then((m) => ({ default: m.ChannelDetailPage }))\n);\nconst ChannelRoutesPage = lazy(() =>\n import('./pages/ChannelRoutesPage').then((m) => ({ default: m.ChannelRoutesPage }))\n);\n\n// Lazy loaded pages - Policies\nconst PoliciesPage = lazy(() =>\n import('./pages/PoliciesPage').then((m) => ({ default: m.PoliciesPage }))\n);\nconst PolicyDetailPage = lazy(() =>\n import('./pages/PolicyDetailPage').then((m) => ({ default: m.PolicyDetailPage }))\n);\n\n// Lazy loaded pages - Skills\nconst SkillsPage = lazy(() =>\n import('./pages/SkillsPage').then((m) => ({ default: m.SkillsPage }))\n);\nconst SkillDetailPage = lazy(() =>\n import('./pages/SkillDetailPage').then((m) => ({ default: m.SkillDetailPage }))\n);\n\n// Lazy loaded pages - Prompt Templates\nconst PromptTemplatesPage = lazy(() =>\n import('./pages/PromptTemplatesPage').then((m) => ({ default: m.PromptTemplatesPage }))\n);\nconst PromptTemplateDetailPage = lazy(() =>\n import('./pages/PromptTemplateDetailPage').then((m) => ({ default: m.PromptTemplateDetailPage }))\n);\nconst PromptStudioPage = lazy(() =>\n import('./pages/PromptStudioPage').then((m) => ({ default: m.PromptStudioPage }))\n);\n\n// Lazy loaded pages - Executions\nconst ExecutionsPage = lazy(() =>\n import('./pages/ExecutionsPage').then((m) => ({ default: m.ExecutionsPage }))\n);\nconst ExecutionDetailPage = lazy(() =>\n import('./pages/ExecutionDetailPage').then((m) => ({ default: m.ExecutionDetailPage }))\n);\n\n// Lazy loaded pages - AI Operations (supervisor decision feed, BOFF-3839)\nconst AiOperationsPage = lazy(() =>\n import('./pages/AiOperationsPage').then((m) => ({ default: m.AiOperationsPage }))\n);\n\n// Lazy loaded pages - Buckets\nconst BucketsPage = lazy(() =>\n import('./pages/BucketsPage').then((m) => ({ default: m.BucketsPage }))\n);\nconst BucketDetailPage = lazy(() =>\n import('./pages/BucketDetailPage').then((m) => ({ default: m.BucketDetailPage }))\n);\n\n// Lazy loaded pages - Store\nconst StorePage = lazy(() => import('./pages/StorePage').then((m) => ({ default: m.StorePage })));\nconst StorePackageDetailPage = lazy(() =>\n import('./pages/StorePackageDetailPage').then((m) => ({ default: m.StorePackageDetailPage }))\n);\nconst InstalledPackagesPage = lazy(() =>\n import('./pages/InstalledPackagesPage').then((m) => ({ default: m.InstalledPackagesPage }))\n);\n\n// Lazy loaded pages - Settings & Chat\nconst SettingsPage = lazy(() =>\n import('./pages/SettingsPage').then((m) => ({ default: m.SettingsPage }))\n);\nconst ChatPage = lazy(() => import('./pages/ChatPage').then((m) => ({ default: m.ChatPage })));\n\n// Loading fallback — the same skeleton `BotmanorRoot` paints while its\n// implementation chunk resolves, so the content region never switches loading\n// idioms (and never goes empty) between first paint and the page rendering.\n\nexport const BotlitRoutes: FC = () => {\n const { basePath, isStandalone } = useBotlit();\n const location = useLocation();\n const t = useTr();\n\n /**\n * Create, edit and chat routes are reachable by URL, so they are gated here\n * as well as at the buttons that link to them: a member without the\n * permission gets a clear \"no access\" state instead of a form the gateway\n * would refuse to save.\n */\n const gated = (\n permission: BotmanorPermission,\n title: string,\n backTo: string,\n backLabel: string,\n element: ReactElement\n ): ReactElement => (\n <RequirePermission permission={permission} title={title} backTo={backTo} backLabel={backLabel}>\n {element}\n </RequirePermission>\n );\n const back = t('permissions.required.back', 'Go back');\n\n // Normalize base path\n const normalizedBasePath = basePath === '/' ? '' : basePath.replace(/\\/$/, '');\n\n // Guard: Only render if path matches basePath (when integrated)\n if (normalizedBasePath && !isStandalone) {\n const pathMatches =\n location.pathname === normalizedBasePath ||\n location.pathname.startsWith(normalizedBasePath + '/');\n\n if (!pathMatches) {\n return null;\n }\n }\n\n return (\n <div className=\"flex flex-col min-h-full bg-bg-surface\">\n <Suspense fallback={<RouteLoader />}>\n <Routes>\n {/* Dashboard - Eager loaded */}\n <Route index element={<DashboardPage />} />\n <Route path=\"home\" element={<Navigate to={normalizedBasePath || '/'} replace />} />\n\n {/* Bots */}\n <Route path=\"bots\" element={<BotsListPage />} />\n <Route\n path=\"bots/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.APP_CREATE,\n t('botlit.botsList.actions.createBot', 'Create Bot'),\n 'bots',\n back,\n <BotDetailPage isNew />\n )}\n />\n <Route path=\"bots/:botId\" element={<BotDetailPage />} />\n <Route\n path=\"bots/:botId/edit\"\n element={gated(\n BOTMANOR_PERMISSIONS.APP_UPDATE,\n t('botlit.botsList.menu.editBot', 'Edit Bot'),\n 'bots',\n back,\n <BotDetailPage isEditing />\n )}\n />\n <Route path=\"bots/:botId/agents\" element={<AgentsListPage />} />\n <Route\n path=\"bots/:botId/agents/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_CREATE,\n t('botlit.agentsList.actions.createAgent', 'Create Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route path=\"bots/:botId/agents/:agentId\" element={<AgentDetailPage />} />\n <Route\n path=\"bots/:botId/agents/:agentId/edit\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_UPDATE,\n t('botlit.agentsList.menu.editAgent', 'Edit Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route path=\"bots/:botId/knowledge\" element={<KnowledgeBasesPage />} />\n <Route path=\"bots/:botId/knowledge/:kbId\" element={<KnowledgeBaseDetailPage />} />\n\n {/* Agents (global view) */}\n <Route path=\"agents\" element={<AgentsListPage />} />\n <Route\n path=\"agents/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_CREATE,\n t('botlit.agentsList.actions.createAgent', 'Create Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route path=\"agents/approvals\" element={<AgentApprovalsPage />} />\n <Route path=\"agents/:agentId\" element={<AgentDetailPage />} />\n <Route\n path=\"agents/:agentId/edit\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_UPDATE,\n t('botlit.agentsList.menu.editAgent', 'Edit Agent'),\n 'agents',\n back,\n <AgentBuilderPage />\n )}\n />\n <Route\n path=\"agents/:agentId/chat\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_EXECUTE,\n t('botlit.chat.title', 'AI Chat'),\n 'agents',\n back,\n <ChatPage />\n )}\n />\n\n {/* Knowledge Bases */}\n <Route path=\"knowledge\" element={<KnowledgeBasesPage />} />\n <Route\n path=\"knowledge/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.KNOWLEDGE_CREATE,\n t('botlit.knowledge.actions.create', 'Create Knowledge Base'),\n 'knowledge',\n back,\n <KnowledgeBaseDetailPage isNew />\n )}\n />\n <Route path=\"knowledge/:kbId\" element={<KnowledgeBaseDetailPage />} />\n\n {/* Retrieval Profiles */}\n <Route path=\"retrieval-profiles\" element={<RetrievalProfilesPage />} />\n <Route\n path=\"retrieval-profiles/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.RETRIEVAL_PROFILE_CREATE,\n t('botlit.retrievalProfiles.actions.create', 'Create Retrieval Profile'),\n 'retrieval-profiles',\n back,\n <RetrievalProfileDetailPage isNew />\n )}\n />\n <Route path=\"retrieval-profiles/:profileId\" element={<RetrievalProfileDetailPage />} />\n\n {/* MCP Servers */}\n <Route path=\"mcp\" element={<MCPServersPage />} />\n <Route\n path=\"mcp/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.MCP_CREATE,\n t('botlit.mcpServers.actions.add', 'Add MCP Server'),\n 'mcp',\n back,\n <MCPServerDetailPage isNew />\n )}\n />\n <Route path=\"mcp/:serverId\" element={<MCPServerDetailPage />} />\n\n {/* A2A Registry */}\n <Route path=\"a2a\" element={<A2ARegistryPage />} />\n <Route\n path=\"a2a/register\"\n element={gated(\n BOTMANOR_PERMISSIONS.A2A_REGISTRY_CREATE,\n t('botlit.a2aRegistry.actions.registerAgent', 'Register Agent'),\n 'a2a',\n back,\n <A2AAgentDetailPage isNew />\n )}\n />\n <Route path=\"a2a/:agentId\" element={<A2AAgentDetailPage />} />\n\n {/* Channels */}\n <Route path=\"channels\" element={<ChannelsPage />} />\n <Route\n path=\"channels/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.CHANNEL_CREATE,\n t('botlit.channels.actions.addChannel', 'Add Channel'),\n 'channels',\n back,\n <ChannelDetailPage isNew />\n )}\n />\n <Route path=\"channels/routes\" element={<ChannelRoutesPage />} />\n <Route path=\"channels/:connectorId\" element={<ChannelDetailPage />} />\n\n {/* Policies & Guardrails */}\n <Route path=\"policies\" element={<PoliciesPage />} />\n <Route\n path=\"policies/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.POLICY_CREATE,\n t('botlit.policies.actions.createPolicy', 'Create Policy'),\n 'policies',\n back,\n <PolicyDetailPage isNew />\n )}\n />\n <Route path=\"policies/:policyId\" element={<PolicyDetailPage />} />\n\n {/* Skills */}\n <Route path=\"skills\" element={<SkillsPage />} />\n <Route\n path=\"skills/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.SKILL_CREATE,\n t('botlit.skills.actions.create', 'Create Skill'),\n 'skills',\n back,\n <SkillDetailPage isNew />\n )}\n />\n <Route path=\"skills/:skillId\" element={<SkillDetailPage />} />\n\n {/* Prompt Templates */}\n <Route path=\"prompt-templates\" element={<PromptTemplatesPage />} />\n <Route\n path=\"prompt-templates/new\"\n element={gated(\n BOTMANOR_PERMISSIONS.PROMPT_TEMPLATE_CREATE,\n t('botlit.promptTemplates.actions.create', 'Create Template'),\n 'prompt-templates',\n back,\n <PromptTemplateDetailPage isNew />\n )}\n />\n <Route path=\"prompt-templates/:templateId\" element={<PromptTemplateDetailPage />} />\n\n {/* Prompt Studio (legacy) */}\n <Route path=\"prompts\" element={<PromptStudioPage />} />\n\n {/* Executions */}\n <Route path=\"executions\" element={<ExecutionsPage />} />\n <Route path=\"ai\" element={<AiOperationsPage />} />\n <Route path=\"executions/:executionId\" element={<ExecutionDetailPage />} />\n\n {/* Buckets */}\n <Route path=\"buckets\" element={<BucketsPage />} />\n <Route\n path=\"buckets/new\"\n element={<Navigate to={`${normalizedBasePath}/buckets`} replace />}\n />\n <Route path=\"buckets/:bucketId\" element={<BucketDetailPage />} />\n\n {/* Store */}\n <Route path=\"store\" element={<StorePage />} />\n <Route path=\"store/installed\" element={<InstalledPackagesPage />} />\n <Route path=\"store/package/:slug\" element={<StorePackageDetailPage />} />\n\n {/* Chat */}\n <Route\n path=\"chat\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_EXECUTE,\n t('botlit.chat.title', 'AI Chat'),\n 'agents',\n back,\n <ChatPage />\n )}\n />\n <Route\n path=\"chat/:agentId\"\n element={gated(\n BOTMANOR_PERMISSIONS.AGENT_EXECUTE,\n t('botlit.chat.title', 'AI Chat'),\n 'agents',\n back,\n <ChatPage />\n )}\n />\n\n {/* Settings */}\n <Route path=\"settings\" element={<SettingsPage />} />\n\n {/* Workflow routes are owned by the shared app-shell WorkflowsRoot. */}\n <Route\n path=\"list\"\n element={<Navigate to={`${normalizedBasePath}/workflows/list`} replace />}\n />\n\n {/* Fallback - land back on the BotManor dashboard, not the app-shell root */}\n <Route path=\"*\" element={<Navigate to={normalizedBasePath || '/'} replace />} />\n </Routes>\n </Suspense>\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;;AAgBA,IAAMA,IAAeC,QACnB,OAAO,0BAAuB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,aAAa,EAAE,CAC1E,GACMC,IAAgBF,QACpB,OAAO,2BAAwB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,cAAc,EAAE,CAC5E,GAGME,IAAiBH,QACrB,OAAO,4BAAyB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,eAAe,EAAE,CAC9E,GACMG,IAAqBJ,QACzB,OAAO,gCAA6B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,mBAAmB,EAAE,CACtF,GACMI,IAAkBL,QACtB,OAAO,6BAA0B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,gBAAgB,EAAE,CAChF,GACMK,IAAmBN,QACvB,OAAO,8BAA2B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,iBAAiB,EAAE,CAClF,GAGMM,IAAqBP,QACzB,OAAO,gCAA6B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,mBAAmB,EAAE,CACtF,GACMO,IAA0BR,QAC9B,OAAO,qCAAkC,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,wBAAwB,EAAE,CAChG,GAGMQ,IAAwBT,QAC5B,OAAO,mCAAgC,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,sBAAsB,EAAE,CAC5F,GACMS,IAA6BV,QACjC,OAAO,wCAAqC,CAAC,MAAM,OAAO,EACxD,SAASC,EAAE,2BACb,EAAE,CACJ,GAGMU,IAAiBX,QACrB,OAAO,4BAAyB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,eAAe,EAAE,CAC9E,GACMW,IAAsBZ,QAC1B,OAAO,iCAA8B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,oBAAoB,EAAE,CACxF,GAGMY,IAAkBb,QACtB,OAAO,6BAA0B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,gBAAgB,EAAE,CAChF,GACMa,IAAqBd,QACzB,OAAO,gCAA6B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,mBAAmB,EAAE,CACtF,GAGMc,IAAef,QACnB,OAAO,0BAAuB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,aAAa,EAAE,CAC1E,GACMe,IAAoBhB,QACxB,OAAO,+BAA4B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,kBAAkB,EAAE,CACpF,GACMgB,IAAoBjB,QACxB,OAAO,+BAA4B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,kBAAkB,EAAE,CACpF,GAGMiB,IAAelB,QACnB,OAAO,0BAAuB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,aAAa,EAAE,CAC1E,GACMkB,IAAmBnB,QACvB,OAAO,8BAA2B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,iBAAiB,EAAE,CAClF,GAGMmB,IAAapB,QACjB,OAAO,wBAAqB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,WAAW,EAAE,CACtE,GACMoB,IAAkBrB,QACtB,OAAO,6BAA0B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,gBAAgB,EAAE,CAChF,GAGMqB,IAAsBtB,QAC1B,OAAO,iCAA8B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,oBAAoB,EAAE,CACxF,GACMsB,IAA2BvB,QAC/B,OAAO,sCAAmC,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,yBAAyB,EAAE,CAClG,GACMuB,IAAmBxB,QACvB,OAAO,8BAA2B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,iBAAiB,EAAE,CAClF,GAGMwB,IAAiBzB,QACrB,OAAO,4BAAyB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,eAAe,EAAE,CAC9E,GACMyB,IAAsB1B,QAC1B,OAAO,iCAA8B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,oBAAoB,EAAE,CACxF,GAGM0B,IAAmB3B,QACvB,OAAO,8BAA2B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,iBAAiB,EAAE,CAClF,GAGM2B,IAAc5B,QAClB,OAAO,yBAAsB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,YAAY,EAAE,CACxE,GACM4B,IAAmB7B,QACvB,OAAO,8BAA2B,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,iBAAiB,EAAE,CAClF,GAGM6B,IAAY9B,QAAW,OAAO,uBAAoB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,UAAU,EAAE,CAAC,GAC1F8B,IAAyB/B,QAC7B,OAAO,oCAAiC,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,uBAAuB,EAAE,CAC9F,GACM+B,IAAwBhC,QAC5B,OAAO,mCAAgC,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,sBAAsB,EAAE,CAC5F,GAGMgC,IAAejC,QACnB,OAAO,0BAAuB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,aAAa,EAAE,CAC1E,GACMiC,IAAWlC,QAAW,OAAO,sBAAmB,CAAC,MAAM,OAAO,EAAE,SAASC,EAAE,SAAS,EAAE,CAAC,GAMhFkC,UAAyB;CACpC,IAAM,EAAE,aAAU,oBAAiBC,EAAU,GACvCC,IAAWC,EAAY,GACvBC,IAAIC,EAAM,GAQVC,KACJ,GACA,GACA,GACA,GACA,MAEA,kBAACC,GAAD;EAA+B;EAAmB;EAAe;EAAmB;EACjF,UAAAC;CACgB,CAAA,GAEfC,IAAOL,EAAE,6BAA6B,SAAS,GAG/CM,IAAqBC,MAAa,MAAM,KAAKA,EAAS,QAAQ,OAAO,EAAE;CAa7E,OAVID,KAAsB,CAACE,KAKrB,EAHFV,EAAS,aAAaQ,KACtBR,EAAS,SAAS,WAAWQ,IAAqB,GAAG,KAG9C,OAKT,kBAAC,OAAD;EAAK,WAAU;EACb,UAAA,kBAACG,GAAD;GAAU,UAAU,kBAACC,GAAD,CAAc,CAAA;GAChC,UAAA,kBAACC,GAAD,EAAA,UAAA;IAEE,kBAACC,GAAD;KAAO,OAAA;KAAM,SAAS,kBAACC,GAAD,CAAgB,CAAA;IAAI,CAAA;IAC1C,kBAACD,GAAD;KAAO,MAAK;KAAO,SAAS,kBAACE,GAAD;MAAU,IAAIR,KAAsB;MAAK,SAAA;KAAS,CAAA;IAAI,CAAA;IAGlF,kBAACM,GAAD;KAAO,MAAK;KAAO,SAAS,kBAACpD,GAAD,CAAe,CAAA;IAAI,CAAA;IAC/C,kBAACoD,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,YACrBf,EAAE,qCAAqC,YAAY,GACnD,QACAK,GACA,kBAAC1C,GAAD,EAAe,OAAA,GAAO,CAAA,CACxB;IACD,CAAA;IACD,kBAACiD,GAAD;KAAO,MAAK;KAAc,SAAS,kBAACjD,GAAD,CAAgB,CAAA;IAAI,CAAA;IACvD,kBAACiD,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,YACrBf,EAAE,gCAAgC,UAAU,GAC5C,QACAK,GACA,kBAAC1C,GAAD,EAAe,WAAA,GAAW,CAAA,CAC5B;IACD,CAAA;IACD,kBAACiD,GAAD;KAAO,MAAK;KAAqB,SAAS,kBAAChD,GAAD,CAAiB,CAAA;IAAI,CAAA;IAC/D,kBAACgD,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,cACrBf,EAAE,yCAAyC,cAAc,GACzD,UACAK,GACA,kBAACtC,GAAD,CAAmB,CAAA,CACrB;IACD,CAAA;IACD,kBAAC6C,GAAD;KAAO,MAAK;KAA8B,SAAS,kBAAC9C,GAAD,CAAkB,CAAA;IAAI,CAAA;IACzE,kBAAC8C,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,cACrBf,EAAE,oCAAoC,YAAY,GAClD,UACAK,GACA,kBAACtC,GAAD,CAAmB,CAAA,CACrB;IACD,CAAA;IACD,kBAAC6C,GAAD;KAAO,MAAK;KAAwB,SAAS,kBAAC5C,GAAD,CAAqB,CAAA;IAAI,CAAA;IACtE,kBAAC4C,GAAD;KAAO,MAAK;KAA8B,SAAS,kBAAC3C,GAAD,CAA0B,CAAA;IAAI,CAAA;IAGjF,kBAAC2C,GAAD;KAAO,MAAK;KAAS,SAAS,kBAAChD,GAAD,CAAiB,CAAA;IAAI,CAAA;IACnD,kBAACgD,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,cACrBf,EAAE,yCAAyC,cAAc,GACzD,UACAK,GACA,kBAACtC,GAAD,CAAmB,CAAA,CACrB;IACD,CAAA;IACD,kBAAC6C,GAAD;KAAO,MAAK;KAAmB,SAAS,kBAAC/C,GAAD,CAAqB,CAAA;IAAI,CAAA;IACjE,kBAAC+C,GAAD;KAAO,MAAK;KAAkB,SAAS,kBAAC9C,GAAD,CAAkB,CAAA;IAAI,CAAA;IAC7D,kBAAC8C,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,cACrBf,EAAE,oCAAoC,YAAY,GAClD,UACAK,GACA,kBAACtC,GAAD,CAAmB,CAAA,CACrB;IACD,CAAA;IACD,kBAAC6C,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,eACrBf,EAAE,qBAAqB,SAAS,GAChC,UACAK,GACA,kBAACV,GAAD,CAAW,CAAA,CACb;IACD,CAAA;IAGD,kBAACiB,GAAD;KAAO,MAAK;KAAY,SAAS,kBAAC5C,GAAD,CAAqB,CAAA;IAAI,CAAA;IAC1D,kBAAC4C,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,kBACrBf,EAAE,mCAAmC,uBAAuB,GAC5D,aACAK,GACA,kBAACpC,GAAD,EAAyB,OAAA,GAAO,CAAA,CAClC;IACD,CAAA;IACD,kBAAC2C,GAAD;KAAO,MAAK;KAAkB,SAAS,kBAAC3C,GAAD,CAA0B,CAAA;IAAI,CAAA;IAGrE,kBAAC2C,GAAD;KAAO,MAAK;KAAqB,SAAS,kBAAC1C,GAAD,CAAwB,CAAA;IAAI,CAAA;IACtE,kBAAC0C,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,0BACrBf,EAAE,2CAA2C,0BAA0B,GACvE,sBACAK,GACA,kBAAClC,GAAD,EAA4B,OAAA,GAAO,CAAA,CACrC;IACD,CAAA;IACD,kBAACyC,GAAD;KAAO,MAAK;KAAgC,SAAS,kBAACzC,GAAD,CAA6B,CAAA;IAAI,CAAA;IAGtF,kBAACyC,GAAD;KAAO,MAAK;KAAM,SAAS,kBAACxC,GAAD,CAAiB,CAAA;IAAI,CAAA;IAChD,kBAACwC,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,YACrBf,EAAE,iCAAiC,gBAAgB,GACnD,OACAK,GACA,kBAAChC,GAAD,EAAqB,OAAA,GAAO,CAAA,CAC9B;IACD,CAAA;IACD,kBAACuC,GAAD;KAAO,MAAK;KAAgB,SAAS,kBAACvC,GAAD,CAAsB,CAAA;IAAI,CAAA;IAG/D,kBAACuC,GAAD;KAAO,MAAK;KAAM,SAAS,kBAACtC,GAAD,CAAkB,CAAA;IAAI,CAAA;IACjD,kBAACsC,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,qBACrBf,EAAE,4CAA4C,gBAAgB,GAC9D,OACAK,GACA,kBAAC9B,GAAD,EAAoB,OAAA,GAAO,CAAA,CAC7B;IACD,CAAA;IACD,kBAACqC,GAAD;KAAO,MAAK;KAAe,SAAS,kBAACrC,GAAD,CAAqB,CAAA;IAAI,CAAA;IAG7D,kBAACqC,GAAD;KAAO,MAAK;KAAW,SAAS,kBAACpC,GAAD,CAAe,CAAA;IAAI,CAAA;IACnD,kBAACoC,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,gBACrBf,EAAE,sCAAsC,aAAa,GACrD,YACAK,GACA,kBAAC5B,GAAD,EAAmB,OAAA,GAAO,CAAA,CAC5B;IACD,CAAA;IACD,kBAACmC,GAAD;KAAO,MAAK;KAAkB,SAAS,kBAAClC,GAAD,CAAoB,CAAA;IAAI,CAAA;IAC/D,kBAACkC,GAAD;KAAO,MAAK;KAAwB,SAAS,kBAACnC,GAAD,CAAoB,CAAA;IAAI,CAAA;IAGrE,kBAACmC,GAAD;KAAO,MAAK;KAAW,SAAS,kBAACjC,GAAD,CAAe,CAAA;IAAI,CAAA;IACnD,kBAACiC,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,eACrBf,EAAE,wCAAwC,eAAe,GACzD,YACAK,GACA,kBAACzB,GAAD,EAAkB,OAAA,GAAO,CAAA,CAC3B;IACD,CAAA;IACD,kBAACgC,GAAD;KAAO,MAAK;KAAqB,SAAS,kBAAChC,GAAD,CAAmB,CAAA;IAAI,CAAA;IAGjE,kBAACgC,GAAD;KAAO,MAAK;KAAS,SAAS,kBAAC/B,GAAD,CAAa,CAAA;IAAI,CAAA;IAC/C,kBAAC+B,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,cACrBf,EAAE,gCAAgC,cAAc,GAChD,UACAK,GACA,kBAACvB,GAAD,EAAiB,OAAA,GAAO,CAAA,CAC1B;IACD,CAAA;IACD,kBAAC8B,GAAD;KAAO,MAAK;KAAkB,SAAS,kBAAC9B,GAAD,CAAkB,CAAA;IAAI,CAAA;IAG7D,kBAAC8B,GAAD;KAAO,MAAK;KAAmB,SAAS,kBAAC7B,GAAD,CAAsB,CAAA;IAAI,CAAA;IAClE,kBAAC6B,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,wBACrBf,EAAE,yCAAyC,iBAAiB,GAC5D,oBACAK,GACA,kBAACrB,GAAD,EAA0B,OAAA,GAAO,CAAA,CACnC;IACD,CAAA;IACD,kBAAC4B,GAAD;KAAO,MAAK;KAA+B,SAAS,kBAAC5B,GAAD,CAA2B,CAAA;IAAI,CAAA;IAGnF,kBAAC4B,GAAD;KAAO,MAAK;KAAU,SAAS,kBAAC3B,GAAD,CAAmB,CAAA;IAAI,CAAA;IAGtD,kBAAC2B,GAAD;KAAO,MAAK;KAAa,SAAS,kBAAC1B,GAAD,CAAiB,CAAA;IAAI,CAAA;IACvD,kBAAC0B,GAAD;KAAO,MAAK;KAAK,SAAS,kBAACxB,GAAD,CAAmB,CAAA;IAAI,CAAA;IACjD,kBAACwB,GAAD;KAAO,MAAK;KAA0B,SAAS,kBAACzB,GAAD,CAAsB,CAAA;IAAI,CAAA;IAGzE,kBAACyB,GAAD;KAAO,MAAK;KAAU,SAAS,kBAACvB,GAAD,CAAc,CAAA;IAAI,CAAA;IACjD,kBAACuB,GAAD;KACE,MAAK;KACL,SAAS,kBAACE,GAAD;MAAU,IAAI,GAAGR,EAAmB;MAAW,SAAA;KAAS,CAAA;IAClE,CAAA;IACD,kBAACM,GAAD;KAAO,MAAK;KAAoB,SAAS,kBAACtB,GAAD,CAAmB,CAAA;IAAI,CAAA;IAGhE,kBAACsB,GAAD;KAAO,MAAK;KAAQ,SAAS,kBAACrB,GAAD,CAAY,CAAA;IAAI,CAAA;IAC7C,kBAACqB,GAAD;KAAO,MAAK;KAAkB,SAAS,kBAACnB,GAAD,CAAwB,CAAA;IAAI,CAAA;IACnE,kBAACmB,GAAD;KAAO,MAAK;KAAsB,SAAS,kBAACpB,GAAD,CAAyB,CAAA;IAAI,CAAA;IAGxE,kBAACoB,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,eACrBf,EAAE,qBAAqB,SAAS,GAChC,UACAK,GACA,kBAACV,GAAD,CAAW,CAAA,CACb;IACD,CAAA;IACD,kBAACiB,GAAD;KACE,MAAK;KACL,SAASV,EACPa,EAAqB,eACrBf,EAAE,qBAAqB,SAAS,GAChC,UACAK,GACA,kBAACV,GAAD,CAAW,CAAA,CACb;IACD,CAAA;IAGD,kBAACiB,GAAD;KAAO,MAAK;KAAW,SAAS,kBAAClB,GAAD,CAAe,CAAA;IAAI,CAAA;IAGnD,kBAACkB,GAAD;KACE,MAAK;KACL,SAAS,kBAACE,GAAD;MAAU,IAAI,GAAGR,EAAmB;MAAkB,SAAA;KAAS,CAAA;IACzE,CAAA;IAGD,kBAACM,GAAD;KAAO,MAAK;KAAI,SAAS,kBAACE,GAAD;MAAU,IAAIR,KAAsB;MAAK,SAAA;KAAS,CAAA;IAAI,CAAA;GACzE,EAAA,CAAA;EACA,CAAA;CACP,CAAA;AAET"}
@@ -24,11 +24,10 @@ export { usePromptTemplates, usePromptTemplate, useCreatePromptTemplate, useUpda
24
24
  export type { PromptTemplateRecord } from './usePromptTemplates';
25
25
  export { useExecutions, useExecution, useCreateExecution, useUpdateExecutionStatus, useExecutionMetrics, summariseExecutions, executionKeys, } from './useExecutions';
26
26
  export type { ExecutionRecord, ExecutionRollup } from './useExecutions';
27
- export { useBuckets, useBucketTree, useBucket, useCreateBucket, useUpdateBucket, useDeleteBucket, buildBucketTree, bucketKeys, } from './useBuckets';
27
+ export { useBuckets, useBucketTree, useBucket, useChildBuckets, useCreateBucket, useUpdateBucket, useDeleteBucket, buildBucketTree, bucketKeys, } from './useBuckets';
28
28
  export type { BucketRecord, BucketTreeNode } from './useBuckets';
29
29
  export { useStorePackages, useStorePackage, useInstalledPackages, useInstalledPackage, useInstallPackage, useUpdateInstalledPackage, useUninstallPackage, usePinPackageVersion, useForkPackage, useCheckPackageUpdates, storePackageName, storePackageDescription, storeKeys, } from './useStore';
30
30
  export type { StoreFilter, StoreSortBy, StorePackageRecord, InstalledPackageRecord, OutdatedPackage, } from './useStore';
31
- export { useConversations, useConversation, useSendMessage, conversationKeys, } from './useConversations';
32
31
  export { useLLMProviders, useConfigureLLMProvider, llmProviderKeys } from './useLLMProviders';
33
32
  export { useMyUserPlatformConnection, useInitiateSlackConnect, useCompleteSlackConnect, useLinkIntegrationConnection, useToggleSlackNotifications, useRevokeSlackConnection, useGlobalChannels, } from './useUserPlatformConnection';
34
33
  export type { UserPlatformConnectionData, GlobalChannelData } from './useUserPlatformConnection';
@@ -1,19 +1,18 @@
1
1
  import { useBots as e } from "./useBots.js";
2
- import "./useAgents.js";
2
+ import { useAgents as t } from "./useAgents.js";
3
3
  import "./useKnowledgeBases.js";
4
- import { useRetrievalProfiles as t } from "./useRetrievalProfiles.js";
5
- import { isMCPServerHealthy as n, mcpServerDescription as r, mcpServerEndpoint as i, useCreateMCPServer as a, useDeleteMCPServer as o, useMCPResources as s, useMCPServer as c, useMCPTools as l, useTestMCPConnection as u, useUpdateMCPServer as d, useUpdateMCPTool as f } from "./useMCPServers.js";
6
- import { a2aAgentSkillCount as p, useA2AAgents as m } from "./useA2A.js";
7
- import { routeMetadataString as h, useBotChannelRoutes as g, useChannelConnector as _, useChannelConnectors as v, useChannelRoutes as y, useCreateChannelConnector as b, useCreateChannelRoute as x, useDeleteChannelConnector as S, useDeleteChannelRoute as C, useUpdateChannelConnector as w } from "./useChannels.js";
8
- import { useCreatePolicy as T, useDeletePolicy as E, usePolicies as D, usePolicy as O, useUpdatePolicy as k } from "./usePolicies.js";
9
- import { useApplyRetention as A, useRetentionStatus as j } from "./useRetention.js";
10
- import { useCreateSkill as M, useDeleteSkill as N, useSkill as P, useSkills as F, useUpdateSkill as I } from "./useSkills.js";
11
- import { promptTemplateVariables as L, useCreatePromptTemplate as R, useDeletePromptTemplate as z, usePromptTemplate as B, usePromptTemplates as V, useRenderPromptTemplate as H, useUpdatePromptTemplate as U } from "./usePromptTemplates.js";
12
- import { summariseExecutions as W, useExecutions as G } from "./useExecutions.js";
13
- import { useBucketTree as K, useBuckets as q, useCreateBucket as J, useDeleteBucket as Y, useUpdateBucket as X } from "./useBuckets.js";
14
- import { storePackageDescription as Z, storePackageName as Q, useInstallPackage as $, useInstalledPackages as ee, usePinPackageVersion as te, useStorePackage as ne, useStorePackages as re, useUninstallPackage as ie, useUpdateInstalledPackage as ae } from "./useStore.js";
15
- import "./useConversations.js";
4
+ import { useRetrievalProfiles as n } from "./useRetrievalProfiles.js";
5
+ import { isMCPServerHealthy as r, mcpServerDescription as i, mcpServerEndpoint as a, useCreateMCPServer as o, useDeleteMCPServer as s, useMCPResources as c, useMCPServer as l, useMCPTools as u, useTestMCPConnection as d, useUpdateMCPServer as f, useUpdateMCPTool as p } from "./useMCPServers.js";
6
+ import { a2aAgentSkillCount as m, useA2AAgents as h } from "./useA2A.js";
7
+ import { routeMetadataString as g, useBotChannelRoutes as _, useChannelConnector as v, useChannelConnectors as y, useChannelRoutes as b, useCreateChannelConnector as x, useCreateChannelRoute as S, useDeleteChannelConnector as C, useDeleteChannelRoute as w, useUpdateChannelConnector as T } from "./useChannels.js";
8
+ import { useCreatePolicy as E, useDeletePolicy as D, usePolicies as O, usePolicy as k, useUpdatePolicy as A } from "./usePolicies.js";
9
+ import { useApplyRetention as j, useRetentionStatus as M } from "./useRetention.js";
10
+ import { useCreateSkill as N, useDeleteSkill as P, useSkill as F, useSkills as I, useUpdateSkill as L } from "./useSkills.js";
11
+ import { promptTemplateVariables as R, useCreatePromptTemplate as z, useDeletePromptTemplate as B, usePromptTemplate as V, usePromptTemplates as H, useRenderPromptTemplate as U, useUpdatePromptTemplate as W } from "./usePromptTemplates.js";
12
+ import { summariseExecutions as G, useExecutions as K } from "./useExecutions.js";
13
+ import { useBucket as q, useBucketTree as J, useBuckets as Y, useChildBuckets as X, useCreateBucket as Z, useDeleteBucket as Q, useUpdateBucket as $ } from "./useBuckets.js";
14
+ import { storePackageDescription as ee, storePackageName as te, useInstallPackage as ne, useInstalledPackages as re, usePinPackageVersion as ie, useStorePackage as ae, useStorePackages as oe, useUninstallPackage as se, useUpdateInstalledPackage as ce } from "./useStore.js";
16
15
  import "./useLLMProviders.js";
17
- import { useInitiateSlackConnect as oe, useLinkIntegrationConnection as se, useMyUserPlatformConnection as ce, useRevokeSlackConnection as le, useToggleSlackNotifications as ue } from "./useUserPlatformConnection.js";
18
- import { useConfigureSupervisor as de, useRunSupervisorNow as fe, useSupervisorConfig as pe, useSupervisorRuns as me } from "./useAiOperations.js";
19
- export { p as a2aAgentSkillCount, n as isMCPServerHealthy, r as mcpServerDescription, i as mcpServerEndpoint, L as promptTemplateVariables, h as routeMetadataString, Z as storePackageDescription, Q as storePackageName, W as summariseExecutions, m as useA2AAgents, A as useApplyRetention, g as useBotChannelRoutes, e as useBots, K as useBucketTree, q as useBuckets, _ as useChannelConnector, v as useChannelConnectors, y as useChannelRoutes, de as useConfigureSupervisor, J as useCreateBucket, b as useCreateChannelConnector, x as useCreateChannelRoute, a as useCreateMCPServer, T as useCreatePolicy, R as useCreatePromptTemplate, M as useCreateSkill, Y as useDeleteBucket, S as useDeleteChannelConnector, C as useDeleteChannelRoute, o as useDeleteMCPServer, E as useDeletePolicy, z as useDeletePromptTemplate, N as useDeleteSkill, G as useExecutions, oe as useInitiateSlackConnect, $ as useInstallPackage, ee as useInstalledPackages, se as useLinkIntegrationConnection, s as useMCPResources, c as useMCPServer, l as useMCPTools, ce as useMyUserPlatformConnection, te as usePinPackageVersion, D as usePolicies, O as usePolicy, B as usePromptTemplate, V as usePromptTemplates, H as useRenderPromptTemplate, j as useRetentionStatus, t as useRetrievalProfiles, le as useRevokeSlackConnection, fe as useRunSupervisorNow, P as useSkill, F as useSkills, ne as useStorePackage, re as useStorePackages, pe as useSupervisorConfig, me as useSupervisorRuns, u as useTestMCPConnection, ue as useToggleSlackNotifications, ie as useUninstallPackage, X as useUpdateBucket, w as useUpdateChannelConnector, ae as useUpdateInstalledPackage, d as useUpdateMCPServer, f as useUpdateMCPTool, k as useUpdatePolicy, U as useUpdatePromptTemplate, I as useUpdateSkill };
16
+ import { useInitiateSlackConnect as le, useLinkIntegrationConnection as ue, useMyUserPlatformConnection as de, useRevokeSlackConnection as fe, useToggleSlackNotifications as pe } from "./useUserPlatformConnection.js";
17
+ import { useConfigureSupervisor as me, useRunSupervisorNow as he, useSupervisorConfig as ge, useSupervisorRuns as _e } from "./useAiOperations.js";
18
+ export { m as a2aAgentSkillCount, r as isMCPServerHealthy, i as mcpServerDescription, a as mcpServerEndpoint, R as promptTemplateVariables, g as routeMetadataString, ee as storePackageDescription, te as storePackageName, G as summariseExecutions, h as useA2AAgents, t as useAgents, j as useApplyRetention, _ as useBotChannelRoutes, e as useBots, q as useBucket, J as useBucketTree, Y as useBuckets, v as useChannelConnector, y as useChannelConnectors, b as useChannelRoutes, X as useChildBuckets, me as useConfigureSupervisor, Z as useCreateBucket, x as useCreateChannelConnector, S as useCreateChannelRoute, o as useCreateMCPServer, E as useCreatePolicy, z as useCreatePromptTemplate, N as useCreateSkill, Q as useDeleteBucket, C as useDeleteChannelConnector, w as useDeleteChannelRoute, s as useDeleteMCPServer, D as useDeletePolicy, B as useDeletePromptTemplate, P as useDeleteSkill, K as useExecutions, le as useInitiateSlackConnect, ne as useInstallPackage, re as useInstalledPackages, ue as useLinkIntegrationConnection, c as useMCPResources, l as useMCPServer, u as useMCPTools, de as useMyUserPlatformConnection, ie as usePinPackageVersion, O as usePolicies, k as usePolicy, V as usePromptTemplate, H as usePromptTemplates, U as useRenderPromptTemplate, M as useRetentionStatus, n as useRetrievalProfiles, fe as useRevokeSlackConnection, he as useRunSupervisorNow, F as useSkill, I as useSkills, ae as useStorePackage, oe as useStorePackages, ge as useSupervisorConfig, _e as useSupervisorRuns, d as useTestMCPConnection, pe as useToggleSlackNotifications, se as useUninstallPackage, $ as useUpdateBucket, T as useUpdateChannelConnector, ce as useUpdateInstalledPackage, f as useUpdateMCPServer, p as useUpdateMCPTool, A as useUpdatePolicy, W as useUpdatePromptTemplate, L as useUpdateSkill };
@@ -51,6 +51,11 @@ export declare function useBuckets(filter?: BaseFilter): QueryResult<BucketRecor
51
51
  * parent link on every bucket, so no separate tree operation is needed.
52
52
  */
53
53
  export declare function useBucketTree(): QueryResult<BucketTreeNode[]>;
54
+ /**
55
+ * Direct children of one bucket, resolved via the `parentBucketId` filter on
56
+ * `listBuckets`. Powers the sub-bucket section of the bucket detail page.
57
+ */
58
+ export declare function useChildBuckets(parentBucketId: string | undefined): QueryResult<BucketRecord[]>;
54
59
  export declare function useBucket(bucketId: string | undefined): QueryResult<BucketRecord | null>;
55
60
  export declare function useCreateBucket(): readonly [(input: CreateBucketVariables) => Promise<BucketRecord>, import('./internal/workspaceGateway').MutationState<BucketRecord>];
56
61
  export declare function useUpdateBucket(): readonly [(input: UpdateBucketVariables) => Promise<BucketRecord>, import('./internal/workspaceGateway').MutationState<BucketRecord>];