@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,25 +1,28 @@
|
|
|
1
1
|
import { useBotlit as e } from "../providers/BotlitProvider.js";
|
|
2
2
|
import { useBots as t } from "../hooks/useBots.js";
|
|
3
3
|
import { formatRelativeTime as n } from "../utils/formatters.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
4
|
+
import { BOTMANOR_PERMISSIONS as r } from "../permissions/botmanorPermissions.js";
|
|
5
|
+
import { BotmanorPermissionGate as i } from "../permissions/useBotmanorPermissions.js";
|
|
6
|
+
import { PageLayout as a } from "../components/PageLayout.js";
|
|
7
|
+
import { Button as o } from "../components/Button.js";
|
|
8
|
+
import "../permissions/index.js";
|
|
9
|
+
import { Card as s, CardContent as c, CardDescription as l, CardHeader as u, CardTitle as d } from "../components/Card.js";
|
|
10
|
+
import { Badge as f, StatusBadge as ee } from "../components/Badge.js";
|
|
8
11
|
import { isNative as te, nativeImpact as ne, nativeNotify as re } from "../../utils/nativeBridge.js";
|
|
9
|
-
import { EmptyState as
|
|
10
|
-
import { FormField as
|
|
11
|
-
import { WIDGET_METADATA_KEY as
|
|
12
|
-
import { toUnion as
|
|
13
|
-
import { useInitiateSlackConnect as
|
|
12
|
+
import { EmptyState as ie } from "../components/EmptyState.js";
|
|
13
|
+
import { FormField as p, Input as m, Textarea as h } from "../components/Input.js";
|
|
14
|
+
import { WIDGET_METADATA_KEY as ae, readWidgetConfig as g, routeMetadataString as _, useChannelConnector as oe, useChannelRoutes as se, useCreateChannelConnector as ce, useCreateChannelRoute as le, useDeleteChannelConnector as ue, useUpdateChannelConnector as de } from "../hooks/useChannels.js";
|
|
15
|
+
import { toUnion as v } from "../utils/unions.js";
|
|
16
|
+
import { useInitiateSlackConnect as fe, useLinkIntegrationConnection as pe, useMyUserPlatformConnection as me, useRevokeSlackConnection as he, useToggleSlackNotifications as ge } from "../hooks/useUserPlatformConnection.js";
|
|
14
17
|
import "../hooks/index.js";
|
|
15
|
-
import { useEffect as
|
|
16
|
-
import { GlassCard as
|
|
17
|
-
import { Fragment as
|
|
18
|
-
import { useParams as
|
|
19
|
-
import { ArrowLeft as
|
|
20
|
-
import { toast as
|
|
18
|
+
import { useEffect as _e, useRef as ve, useState as y } from "react";
|
|
19
|
+
import { GlassCard as ye, NextSteps as be, PagePurpose as xe } from "@burdenoff/fe-libs/ui";
|
|
20
|
+
import { Fragment as Se, jsx as b, jsxs as x } from "react/jsx-runtime";
|
|
21
|
+
import { useParams as Ce, useSearchParams as we } from "react-router";
|
|
22
|
+
import { ArrowLeft as Te, Bell as Ee, BellOff as De, CheckCircle2 as Oe, Edit as ke, ExternalLink as Ae, Globe as S, Hash as C, Loader2 as w, MessageSquare as T, Palette as E, Plus as D, Radio as O, Save as k, Settings as A, Shield as je, Slack as j, Trash2 as Me, Unlink as Ne, X as M } from "lucide-react";
|
|
23
|
+
import { toast as N } from "sonner";
|
|
21
24
|
//#region src/botlit/pages/ChannelDetailPage.tsx
|
|
22
|
-
var
|
|
25
|
+
var P = [
|
|
23
26
|
"WEB_WIDGET",
|
|
24
27
|
"SLACK",
|
|
25
28
|
"TEAMS",
|
|
@@ -27,107 +30,107 @@ var j = [
|
|
|
27
30
|
"WHATSAPP",
|
|
28
31
|
"WEBHOOK",
|
|
29
32
|
"CUSTOM"
|
|
30
|
-
],
|
|
33
|
+
], Pe = [
|
|
31
34
|
"PRIVATE",
|
|
32
35
|
"WORKSPACE",
|
|
33
36
|
"PUBLIC"
|
|
34
37
|
];
|
|
35
|
-
function
|
|
38
|
+
function Fe(e) {
|
|
36
39
|
return e.split(",").map((e) => e.trim()).filter(Boolean);
|
|
37
40
|
}
|
|
38
|
-
var
|
|
41
|
+
var Ie = ({ type: e }) => {
|
|
39
42
|
switch (e) {
|
|
40
|
-
case "SLACK": return /* @__PURE__ */
|
|
41
|
-
case "WEB_WIDGET": return /* @__PURE__ */
|
|
42
|
-
case "TEAMS": return /* @__PURE__ */
|
|
43
|
-
default: return /* @__PURE__ */
|
|
43
|
+
case "SLACK": return /* @__PURE__ */ b(C, { size: 18 });
|
|
44
|
+
case "WEB_WIDGET": return /* @__PURE__ */ b(S, { size: 18 });
|
|
45
|
+
case "TEAMS": return /* @__PURE__ */ b(T, { size: 18 });
|
|
46
|
+
default: return /* @__PURE__ */ b(O, { size: 18 });
|
|
44
47
|
}
|
|
45
|
-
},
|
|
46
|
-
let { connectorId:
|
|
47
|
-
|
|
48
|
-
if (
|
|
49
|
-
let e =
|
|
48
|
+
}, F = ({ isNew: S }) => {
|
|
49
|
+
let { connectorId: C } = Ce(), { navigateTo: F } = e(), [I, Le] = we(), { data: L, loading: Re } = oe(S ? void 0 : C), { data: ze, refetch: Be } = se(C), { data: Ve } = t(), [He, Ue] = ce(), [We, Ge] = de(), [Ke, qe] = ue(), [Je, Ye] = le(), R = L?.type === "SLACK" && L?.credentialsRefId ? L.credentialsRefId : void 0, { data: z, loading: Xe, refetch: B } = me(R), { initiate: Ze } = fe(), { link: Qe, loading: $e } = pe(), { toggle: et, loading: tt } = ge(), { revoke: nt, loading: rt } = he(), [it, V] = y(null), at = ve(!1);
|
|
50
|
+
_e(() => {
|
|
51
|
+
if (at.current) return;
|
|
52
|
+
let e = I.get("integrationConnectionId"), t = I.get("channelId");
|
|
50
53
|
if (!e || !t) return;
|
|
51
|
-
|
|
52
|
-
let n = new URLSearchParams(
|
|
53
|
-
n.delete("integrationConnectionId"), n.delete("channelId"),
|
|
54
|
-
e ?
|
|
54
|
+
at.current = !0;
|
|
55
|
+
let n = new URLSearchParams(I);
|
|
56
|
+
n.delete("integrationConnectionId"), n.delete("channelId"), Le(n, { replace: !0 }), V(null), Qe(e, t).then((e) => {
|
|
57
|
+
e ? B() : V("Failed to link Slack connection. Please try again.");
|
|
55
58
|
});
|
|
56
59
|
}, [
|
|
57
|
-
F,
|
|
58
60
|
I,
|
|
59
|
-
|
|
60
|
-
|
|
61
|
+
Le,
|
|
62
|
+
Qe,
|
|
63
|
+
B
|
|
61
64
|
]);
|
|
62
|
-
let
|
|
63
|
-
|
|
64
|
-
},
|
|
65
|
-
|
|
66
|
-
},
|
|
67
|
-
|
|
68
|
-
}, [
|
|
65
|
+
let ot = () => {
|
|
66
|
+
R && Ze(R, `${window.location.origin}${window.location.pathname}`);
|
|
67
|
+
}, st = async () => {
|
|
68
|
+
z && await et(z.id, !z.notificationsEnabled) && await B();
|
|
69
|
+
}, ct = async () => {
|
|
70
|
+
z && await nt(z.id) && await B();
|
|
71
|
+
}, [H, U] = y(!1), [lt, ut] = y(!1), [dt, W] = y(!1), [G, K] = y({
|
|
69
72
|
locationId: "",
|
|
70
73
|
locationName: "",
|
|
71
74
|
botId: ""
|
|
72
|
-
}), [q, J] =
|
|
75
|
+
}), [q, J] = y({
|
|
73
76
|
name: "",
|
|
74
77
|
description: "",
|
|
75
78
|
type: "WEB_WIDGET",
|
|
76
79
|
visibility: "PRIVATE",
|
|
77
80
|
credentialsRefId: ""
|
|
78
|
-
}), [Y, X] =
|
|
81
|
+
}), [Y, X] = y({
|
|
79
82
|
allowedOrigins: "",
|
|
80
83
|
primaryColor: "#3b82f6",
|
|
81
84
|
fontFamily: "Inter, sans-serif",
|
|
82
85
|
starterPrompts: ""
|
|
83
|
-
}),
|
|
84
|
-
if (q.type === "WEB_WIDGET") return { [
|
|
85
|
-
allowedOrigins:
|
|
86
|
+
}), ft = () => {
|
|
87
|
+
if (q.type === "WEB_WIDGET") return { [ae]: {
|
|
88
|
+
allowedOrigins: Fe(Y.allowedOrigins),
|
|
86
89
|
primaryColor: Y.primaryColor,
|
|
87
90
|
fontFamily: Y.fontFamily,
|
|
88
|
-
starterPrompts:
|
|
91
|
+
starterPrompts: Fe(Y.starterPrompts)
|
|
89
92
|
} };
|
|
90
|
-
},
|
|
93
|
+
}, pt = async () => {
|
|
91
94
|
if (q.name) try {
|
|
92
|
-
let e = await
|
|
95
|
+
let e = await He({
|
|
93
96
|
name: q.name,
|
|
94
97
|
type: q.type,
|
|
95
98
|
description: q.description || void 0,
|
|
96
99
|
visibility: q.visibility,
|
|
97
100
|
credentialsRefId: q.credentialsRefId || void 0,
|
|
98
|
-
metadata:
|
|
101
|
+
metadata: ft()
|
|
99
102
|
});
|
|
100
|
-
|
|
103
|
+
N.success(`Channel "${e.name}" created`), F(`channels/${e.id}`);
|
|
101
104
|
} catch (e) {
|
|
102
|
-
|
|
105
|
+
N.error(e instanceof Error ? e.message : "Failed to create channel connector");
|
|
103
106
|
}
|
|
104
|
-
},
|
|
105
|
-
if (!(!
|
|
106
|
-
await
|
|
107
|
-
connectorId:
|
|
107
|
+
}, mt = async () => {
|
|
108
|
+
if (!(!C || !q.name)) try {
|
|
109
|
+
await We({
|
|
110
|
+
connectorId: C,
|
|
108
111
|
input: {
|
|
109
112
|
name: q.name,
|
|
110
113
|
description: q.description || void 0,
|
|
111
114
|
visibility: q.visibility,
|
|
112
115
|
credentialsRefId: q.credentialsRefId || void 0,
|
|
113
|
-
metadata:
|
|
116
|
+
metadata: ft()
|
|
114
117
|
}
|
|
115
|
-
}),
|
|
118
|
+
}), N.success("Channel updated"), U(!1);
|
|
116
119
|
} catch (e) {
|
|
117
|
-
|
|
120
|
+
N.error(e instanceof Error ? e.message : "Failed to update channel connector");
|
|
118
121
|
}
|
|
119
|
-
},
|
|
120
|
-
if (
|
|
121
|
-
await
|
|
122
|
+
}, ht = async () => {
|
|
123
|
+
if (C) try {
|
|
124
|
+
await Ke(C), te() && re("success"), F("channels");
|
|
122
125
|
} catch (e) {
|
|
123
126
|
throw te() && re("error"), e;
|
|
124
127
|
}
|
|
125
|
-
},
|
|
126
|
-
if (!
|
|
127
|
-
let e =
|
|
128
|
+
}, gt = async () => {
|
|
129
|
+
if (!C || !G.locationId || !G.botId) return;
|
|
130
|
+
let e = Ve?.find((e) => e.id === G.botId);
|
|
128
131
|
try {
|
|
129
|
-
await
|
|
130
|
-
connectorId:
|
|
132
|
+
await Je({
|
|
133
|
+
connectorId: C,
|
|
131
134
|
locationId: G.locationId,
|
|
132
135
|
appId: G.botId,
|
|
133
136
|
metadata: {
|
|
@@ -136,24 +139,24 @@ var N = ({ type: e }) => {
|
|
|
136
139
|
}
|
|
137
140
|
});
|
|
138
141
|
} catch (e) {
|
|
139
|
-
|
|
142
|
+
N.error(e instanceof Error ? e.message : "Failed to create route");
|
|
140
143
|
return;
|
|
141
144
|
}
|
|
142
|
-
|
|
145
|
+
N.success("Route created"), Be(), K({
|
|
143
146
|
locationId: "",
|
|
144
147
|
locationName: "",
|
|
145
148
|
botId: ""
|
|
146
149
|
}), W(!1);
|
|
147
|
-
},
|
|
150
|
+
}, _t = () => {
|
|
148
151
|
if (!L) return;
|
|
149
152
|
J({
|
|
150
153
|
name: L.name,
|
|
151
154
|
description: L.description || "",
|
|
152
|
-
type:
|
|
153
|
-
visibility:
|
|
155
|
+
type: v(L.type, P, "CUSTOM"),
|
|
156
|
+
visibility: v(L.visibility, Pe, "PRIVATE"),
|
|
154
157
|
credentialsRefId: L.credentialsRefId || ""
|
|
155
158
|
});
|
|
156
|
-
let e =
|
|
159
|
+
let e = g(L);
|
|
157
160
|
e && X({
|
|
158
161
|
allowedOrigins: e.allowedOrigins.join(", "),
|
|
159
162
|
primaryColor: e.primaryColor,
|
|
@@ -161,32 +164,32 @@ var N = ({ type: e }) => {
|
|
|
161
164
|
starterPrompts: e.starterPrompts.join(", ")
|
|
162
165
|
}), U(!0);
|
|
163
166
|
};
|
|
164
|
-
if (
|
|
167
|
+
if (S) return /* @__PURE__ */ b(a, {
|
|
165
168
|
title: "Create Channel Connector",
|
|
166
169
|
description: "Set up a new channel for your AI agents",
|
|
167
|
-
actions: /* @__PURE__ */
|
|
170
|
+
actions: /* @__PURE__ */ x("div", {
|
|
168
171
|
className: "flex gap-2",
|
|
169
|
-
children: [/* @__PURE__ */
|
|
172
|
+
children: [/* @__PURE__ */ b(o, {
|
|
170
173
|
variant: "outline",
|
|
171
|
-
onClick: () =>
|
|
174
|
+
onClick: () => F("channels"),
|
|
172
175
|
children: "Cancel"
|
|
173
|
-
}), /* @__PURE__ */
|
|
174
|
-
leftIcon: /* @__PURE__ */
|
|
175
|
-
onClick:
|
|
176
|
-
isLoading:
|
|
176
|
+
}), /* @__PURE__ */ b(o, {
|
|
177
|
+
leftIcon: /* @__PURE__ */ b(k, { size: 16 }),
|
|
178
|
+
onClick: pt,
|
|
179
|
+
isLoading: Ue.loading || Ge.loading,
|
|
177
180
|
disabled: !q.name,
|
|
178
181
|
children: "Create"
|
|
179
182
|
})]
|
|
180
183
|
}),
|
|
181
|
-
children: /* @__PURE__ */
|
|
184
|
+
children: /* @__PURE__ */ x("div", {
|
|
182
185
|
className: "max-w-2xl space-y-6",
|
|
183
|
-
children: [/* @__PURE__ */
|
|
186
|
+
children: [/* @__PURE__ */ x(s, { children: [/* @__PURE__ */ b(u, { children: /* @__PURE__ */ b(d, { children: "Basic Information" }) }), /* @__PURE__ */ x(c, {
|
|
184
187
|
className: "space-y-4",
|
|
185
188
|
children: [
|
|
186
|
-
/* @__PURE__ */
|
|
189
|
+
/* @__PURE__ */ b(p, {
|
|
187
190
|
label: "Connector Name",
|
|
188
191
|
required: !0,
|
|
189
|
-
children: /* @__PURE__ */
|
|
192
|
+
children: /* @__PURE__ */ b(m, {
|
|
190
193
|
placeholder: "e.g., Production Web Widget",
|
|
191
194
|
value: q.name,
|
|
192
195
|
onChange: (e) => J({
|
|
@@ -195,9 +198,9 @@ var N = ({ type: e }) => {
|
|
|
195
198
|
})
|
|
196
199
|
})
|
|
197
200
|
}),
|
|
198
|
-
/* @__PURE__ */
|
|
201
|
+
/* @__PURE__ */ b(p, {
|
|
199
202
|
label: "Description",
|
|
200
|
-
children: /* @__PURE__ */
|
|
203
|
+
children: /* @__PURE__ */ b(h, {
|
|
201
204
|
placeholder: "What is this channel connector for?",
|
|
202
205
|
value: q.description,
|
|
203
206
|
onChange: (e) => J({
|
|
@@ -207,12 +210,12 @@ var N = ({ type: e }) => {
|
|
|
207
210
|
rows: 3
|
|
208
211
|
})
|
|
209
212
|
}),
|
|
210
|
-
/* @__PURE__ */
|
|
213
|
+
/* @__PURE__ */ x("div", {
|
|
211
214
|
className: "grid grid-cols-2 gap-4",
|
|
212
|
-
children: [/* @__PURE__ */
|
|
215
|
+
children: [/* @__PURE__ */ b(p, {
|
|
213
216
|
label: "Channel Type",
|
|
214
217
|
required: !0,
|
|
215
|
-
children: /* @__PURE__ */
|
|
218
|
+
children: /* @__PURE__ */ x("select", {
|
|
216
219
|
className: "flex h-10 w-full rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm",
|
|
217
220
|
value: q.type,
|
|
218
221
|
onChange: (e) => J({
|
|
@@ -220,39 +223,39 @@ var N = ({ type: e }) => {
|
|
|
220
223
|
type: e.target.value
|
|
221
224
|
}),
|
|
222
225
|
children: [
|
|
223
|
-
/* @__PURE__ */
|
|
226
|
+
/* @__PURE__ */ b("option", {
|
|
224
227
|
value: "WEB_WIDGET",
|
|
225
228
|
children: "Web Widget"
|
|
226
229
|
}),
|
|
227
|
-
/* @__PURE__ */
|
|
230
|
+
/* @__PURE__ */ b("option", {
|
|
228
231
|
value: "SLACK",
|
|
229
232
|
children: "Slack"
|
|
230
233
|
}),
|
|
231
|
-
/* @__PURE__ */
|
|
234
|
+
/* @__PURE__ */ b("option", {
|
|
232
235
|
value: "TEAMS",
|
|
233
236
|
children: "Microsoft Teams"
|
|
234
237
|
}),
|
|
235
|
-
/* @__PURE__ */
|
|
238
|
+
/* @__PURE__ */ b("option", {
|
|
236
239
|
value: "DISCORD",
|
|
237
240
|
children: "Discord"
|
|
238
241
|
}),
|
|
239
|
-
/* @__PURE__ */
|
|
242
|
+
/* @__PURE__ */ b("option", {
|
|
240
243
|
value: "WHATSAPP",
|
|
241
244
|
children: "WhatsApp"
|
|
242
245
|
}),
|
|
243
|
-
/* @__PURE__ */
|
|
246
|
+
/* @__PURE__ */ b("option", {
|
|
244
247
|
value: "WEBHOOK",
|
|
245
248
|
children: "Webhook"
|
|
246
249
|
}),
|
|
247
|
-
/* @__PURE__ */
|
|
250
|
+
/* @__PURE__ */ b("option", {
|
|
248
251
|
value: "CUSTOM",
|
|
249
252
|
children: "Custom"
|
|
250
253
|
})
|
|
251
254
|
]
|
|
252
255
|
})
|
|
253
|
-
}), /* @__PURE__ */
|
|
256
|
+
}), /* @__PURE__ */ b(p, {
|
|
254
257
|
label: "Visibility",
|
|
255
|
-
children: /* @__PURE__ */
|
|
258
|
+
children: /* @__PURE__ */ x("select", {
|
|
256
259
|
className: "flex h-10 w-full rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm",
|
|
257
260
|
value: q.visibility,
|
|
258
261
|
onChange: (e) => J({
|
|
@@ -260,15 +263,15 @@ var N = ({ type: e }) => {
|
|
|
260
263
|
visibility: e.target.value
|
|
261
264
|
}),
|
|
262
265
|
children: [
|
|
263
|
-
/* @__PURE__ */
|
|
266
|
+
/* @__PURE__ */ b("option", {
|
|
264
267
|
value: "PRIVATE",
|
|
265
268
|
children: "Private"
|
|
266
269
|
}),
|
|
267
|
-
/* @__PURE__ */
|
|
270
|
+
/* @__PURE__ */ b("option", {
|
|
268
271
|
value: "WORKSPACE",
|
|
269
272
|
children: "Workspace"
|
|
270
273
|
}),
|
|
271
|
-
/* @__PURE__ */
|
|
274
|
+
/* @__PURE__ */ b("option", {
|
|
272
275
|
value: "PUBLIC",
|
|
273
276
|
children: "Public"
|
|
274
277
|
})
|
|
@@ -276,9 +279,9 @@ var N = ({ type: e }) => {
|
|
|
276
279
|
})
|
|
277
280
|
})]
|
|
278
281
|
}),
|
|
279
|
-
q.type !== "WEB_WIDGET" && /* @__PURE__ */
|
|
282
|
+
q.type !== "WEB_WIDGET" && /* @__PURE__ */ b(p, {
|
|
280
283
|
label: "Credentials Reference",
|
|
281
|
-
children: /* @__PURE__ */
|
|
284
|
+
children: /* @__PURE__ */ b(m, {
|
|
282
285
|
placeholder: "e.g., secret-slack-token",
|
|
283
286
|
value: q.credentialsRefId,
|
|
284
287
|
onChange: (e) => J({
|
|
@@ -288,16 +291,16 @@ var N = ({ type: e }) => {
|
|
|
288
291
|
})
|
|
289
292
|
})
|
|
290
293
|
]
|
|
291
|
-
})] }), q.type === "WEB_WIDGET" && /* @__PURE__ */
|
|
294
|
+
})] }), q.type === "WEB_WIDGET" && /* @__PURE__ */ x(s, { children: [/* @__PURE__ */ b(u, { children: /* @__PURE__ */ x(d, {
|
|
292
295
|
className: "flex items-center gap-2",
|
|
293
|
-
children: [/* @__PURE__ */
|
|
294
|
-
}) }), /* @__PURE__ */
|
|
296
|
+
children: [/* @__PURE__ */ b(E, { size: 18 }), "Widget Configuration"]
|
|
297
|
+
}) }), /* @__PURE__ */ x(c, {
|
|
295
298
|
className: "space-y-4",
|
|
296
299
|
children: [
|
|
297
|
-
/* @__PURE__ */
|
|
300
|
+
/* @__PURE__ */ b(p, {
|
|
298
301
|
label: "Allowed Origins",
|
|
299
302
|
description: "Comma-separated list of domains",
|
|
300
|
-
children: /* @__PURE__ */
|
|
303
|
+
children: /* @__PURE__ */ b(m, {
|
|
301
304
|
placeholder: "e.g., https://example.com, https://app.example.com",
|
|
302
305
|
value: Y.allowedOrigins,
|
|
303
306
|
onChange: (e) => X({
|
|
@@ -306,13 +309,13 @@ var N = ({ type: e }) => {
|
|
|
306
309
|
})
|
|
307
310
|
})
|
|
308
311
|
}),
|
|
309
|
-
/* @__PURE__ */
|
|
312
|
+
/* @__PURE__ */ x("div", {
|
|
310
313
|
className: "grid grid-cols-2 gap-4",
|
|
311
|
-
children: [/* @__PURE__ */
|
|
314
|
+
children: [/* @__PURE__ */ b(p, {
|
|
312
315
|
label: "Primary Color",
|
|
313
|
-
children: /* @__PURE__ */
|
|
316
|
+
children: /* @__PURE__ */ x("div", {
|
|
314
317
|
className: "flex gap-2",
|
|
315
|
-
children: [/* @__PURE__ */
|
|
318
|
+
children: [/* @__PURE__ */ b("input", {
|
|
316
319
|
type: "color",
|
|
317
320
|
value: Y.primaryColor,
|
|
318
321
|
onChange: (e) => X({
|
|
@@ -320,7 +323,7 @@ var N = ({ type: e }) => {
|
|
|
320
323
|
primaryColor: e.target.value
|
|
321
324
|
}),
|
|
322
325
|
className: "h-10 w-16 rounded border border-border-default"
|
|
323
|
-
}), /* @__PURE__ */
|
|
326
|
+
}), /* @__PURE__ */ b(m, {
|
|
324
327
|
value: Y.primaryColor,
|
|
325
328
|
onChange: (e) => X({
|
|
326
329
|
...Y,
|
|
@@ -328,9 +331,9 @@ var N = ({ type: e }) => {
|
|
|
328
331
|
})
|
|
329
332
|
})]
|
|
330
333
|
})
|
|
331
|
-
}), /* @__PURE__ */
|
|
334
|
+
}), /* @__PURE__ */ b(p, {
|
|
332
335
|
label: "Font Family",
|
|
333
|
-
children: /* @__PURE__ */
|
|
336
|
+
children: /* @__PURE__ */ b(m, {
|
|
334
337
|
value: Y.fontFamily,
|
|
335
338
|
onChange: (e) => X({
|
|
336
339
|
...Y,
|
|
@@ -339,10 +342,10 @@ var N = ({ type: e }) => {
|
|
|
339
342
|
})
|
|
340
343
|
})]
|
|
341
344
|
}),
|
|
342
|
-
/* @__PURE__ */
|
|
345
|
+
/* @__PURE__ */ b(p, {
|
|
343
346
|
label: "Starter Prompts",
|
|
344
347
|
description: "One per line",
|
|
345
|
-
children: /* @__PURE__ */
|
|
348
|
+
children: /* @__PURE__ */ b(h, {
|
|
346
349
|
placeholder: "What can you help me with?",
|
|
347
350
|
value: Y.starterPrompts,
|
|
348
351
|
onChange: (e) => X({
|
|
@@ -356,105 +359,114 @@ var N = ({ type: e }) => {
|
|
|
356
359
|
})] })]
|
|
357
360
|
})
|
|
358
361
|
});
|
|
359
|
-
if (
|
|
362
|
+
if (Re) return /* @__PURE__ */ b(a, {
|
|
360
363
|
title: "Loading...",
|
|
361
|
-
children: /* @__PURE__ */
|
|
364
|
+
children: /* @__PURE__ */ b("div", { className: "h-96 bg-bg-sunken motion-safe:animate-vc-shimmer rounded-lg" })
|
|
362
365
|
});
|
|
363
|
-
if (!L) return /* @__PURE__ */
|
|
366
|
+
if (!L) return /* @__PURE__ */ b(a, {
|
|
364
367
|
title: "Connector Not Found",
|
|
365
|
-
children: /* @__PURE__ */
|
|
368
|
+
children: /* @__PURE__ */ b(ie, {
|
|
366
369
|
illustration: "empty-notifications",
|
|
367
370
|
title: "Connector Not Found",
|
|
368
371
|
description: "This channel connector doesn't exist.",
|
|
369
|
-
action: /* @__PURE__ */
|
|
370
|
-
onClick: () =>
|
|
372
|
+
action: /* @__PURE__ */ b(o, {
|
|
373
|
+
onClick: () => F("channels"),
|
|
371
374
|
children: "Back to Channels"
|
|
372
375
|
})
|
|
373
376
|
})
|
|
374
377
|
});
|
|
375
|
-
let Z =
|
|
376
|
-
return /* @__PURE__ */
|
|
377
|
-
title: /* @__PURE__ */
|
|
378
|
+
let Z = ze?.filter((e) => e.connectorId === L.id) || [], Q = v(L.type, P, "CUSTOM"), $ = g(L);
|
|
379
|
+
return /* @__PURE__ */ b(a, {
|
|
380
|
+
title: /* @__PURE__ */ x("div", {
|
|
378
381
|
className: "flex items-center gap-3",
|
|
379
382
|
children: [
|
|
380
|
-
/* @__PURE__ */
|
|
383
|
+
/* @__PURE__ */ b(o, {
|
|
381
384
|
variant: "ghost",
|
|
382
385
|
size: "icon",
|
|
383
|
-
onClick: () =>
|
|
384
|
-
children: /* @__PURE__ */
|
|
386
|
+
onClick: () => F("channels"),
|
|
387
|
+
children: /* @__PURE__ */ b(Te, { size: 20 })
|
|
385
388
|
}),
|
|
386
|
-
/* @__PURE__ */
|
|
389
|
+
/* @__PURE__ */ b("div", {
|
|
387
390
|
className: "p-2 rounded-lg bg-action-primary-bg/10",
|
|
388
|
-
children: /* @__PURE__ */
|
|
391
|
+
children: /* @__PURE__ */ b(Ie, { type: Q })
|
|
389
392
|
}),
|
|
390
|
-
/* @__PURE__ */
|
|
393
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ x("div", {
|
|
391
394
|
className: "flex items-center gap-2",
|
|
392
|
-
children: [/* @__PURE__ */
|
|
393
|
-
}), /* @__PURE__ */
|
|
395
|
+
children: [/* @__PURE__ */ b("span", { children: L.name }), /* @__PURE__ */ b(ee, { status: L.status })]
|
|
396
|
+
}), /* @__PURE__ */ b("p", {
|
|
394
397
|
className: "text-sm font-normal text-text-secondary",
|
|
395
398
|
children: L.description
|
|
396
399
|
})] })
|
|
397
400
|
]
|
|
398
401
|
}),
|
|
399
|
-
actions: /* @__PURE__ */
|
|
402
|
+
actions: /* @__PURE__ */ x("div", {
|
|
400
403
|
className: "flex gap-2",
|
|
401
|
-
children: [/* @__PURE__ */
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
404
|
+
children: [/* @__PURE__ */ b(i, {
|
|
405
|
+
permission: r.CHANNEL_CREATE,
|
|
406
|
+
children: /* @__PURE__ */ b(o, {
|
|
407
|
+
variant: "outline",
|
|
408
|
+
leftIcon: /* @__PURE__ */ b(D, { size: 16 }),
|
|
409
|
+
onClick: () => W(!0),
|
|
410
|
+
children: "Add Route"
|
|
411
|
+
})
|
|
412
|
+
}), H ? /* @__PURE__ */ x(Se, { children: [/* @__PURE__ */ b(o, {
|
|
407
413
|
variant: "outline",
|
|
408
414
|
onClick: () => U(!1),
|
|
409
415
|
children: "Cancel"
|
|
410
|
-
}), /* @__PURE__ */
|
|
411
|
-
leftIcon: /* @__PURE__ */
|
|
412
|
-
onClick:
|
|
413
|
-
isLoading:
|
|
416
|
+
}), /* @__PURE__ */ b(o, {
|
|
417
|
+
leftIcon: /* @__PURE__ */ b(k, { size: 16 }),
|
|
418
|
+
onClick: mt,
|
|
419
|
+
isLoading: Ge.loading,
|
|
414
420
|
children: "Save"
|
|
415
|
-
})] }) : /* @__PURE__ */
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
+
})] }) : /* @__PURE__ */ x(Se, { children: [/* @__PURE__ */ b(i, {
|
|
422
|
+
permission: r.CHANNEL_UPDATE,
|
|
423
|
+
children: /* @__PURE__ */ b(o, {
|
|
424
|
+
variant: "outline",
|
|
425
|
+
leftIcon: /* @__PURE__ */ b(ke, { size: 16 }),
|
|
426
|
+
onClick: _t,
|
|
427
|
+
children: "Edit"
|
|
428
|
+
})
|
|
429
|
+
}), lt ? /* @__PURE__ */ x("div", {
|
|
421
430
|
className: "flex gap-2",
|
|
422
|
-
children: [/* @__PURE__ */
|
|
431
|
+
children: [/* @__PURE__ */ b(o, {
|
|
423
432
|
variant: "outline",
|
|
424
433
|
size: "sm",
|
|
425
|
-
onClick: () =>
|
|
434
|
+
onClick: () => ut(!1),
|
|
426
435
|
children: "Cancel"
|
|
427
|
-
}), /* @__PURE__ */
|
|
436
|
+
}), /* @__PURE__ */ b(o, {
|
|
428
437
|
variant: "destructive",
|
|
429
438
|
size: "sm",
|
|
430
439
|
onClick: () => {
|
|
431
|
-
ne("medium"),
|
|
440
|
+
ne("medium"), ht();
|
|
432
441
|
},
|
|
433
|
-
isLoading:
|
|
442
|
+
isLoading: qe.loading,
|
|
434
443
|
children: "Confirm"
|
|
435
444
|
})]
|
|
436
|
-
}) : /* @__PURE__ */
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
445
|
+
}) : /* @__PURE__ */ b(i, {
|
|
446
|
+
permission: r.CHANNEL_DELETE,
|
|
447
|
+
children: /* @__PURE__ */ b(o, {
|
|
448
|
+
variant: "destructive",
|
|
449
|
+
leftIcon: /* @__PURE__ */ b(Me, { size: 16 }),
|
|
450
|
+
onClick: () => ut(!0),
|
|
451
|
+
children: "Delete"
|
|
452
|
+
})
|
|
441
453
|
})] })]
|
|
442
454
|
}),
|
|
443
|
-
children: /* @__PURE__ */
|
|
455
|
+
children: /* @__PURE__ */ x("div", {
|
|
444
456
|
className: "space-y-6",
|
|
445
457
|
children: [
|
|
446
|
-
/* @__PURE__ */
|
|
447
|
-
icon: /* @__PURE__ */
|
|
458
|
+
/* @__PURE__ */ b(xe, {
|
|
459
|
+
icon: /* @__PURE__ */ b(O, { size: 18 }),
|
|
448
460
|
children: "This connector links BotManor to one messaging platform. From here you add routes — each mapping a specific location on the channel (a Slack channel, a widget, a number) to the bot that should answer there — tweak the connector’s settings, and manage its connection. Set up at least one route so messages on this channel reach a bot."
|
|
449
461
|
}),
|
|
450
|
-
/* @__PURE__ */
|
|
462
|
+
/* @__PURE__ */ b(be, {
|
|
451
463
|
storageKey: `botlit-channel-${L.id}`,
|
|
452
464
|
steps: [
|
|
453
465
|
{
|
|
454
466
|
id: "route",
|
|
455
467
|
label: "Add a route",
|
|
456
468
|
description: "Point an incoming location on this channel at one of your bots.",
|
|
457
|
-
icon: /* @__PURE__ */
|
|
469
|
+
icon: /* @__PURE__ */ b(D, { size: 16 }),
|
|
458
470
|
onClick: () => W(!0),
|
|
459
471
|
done: Z.length > 0
|
|
460
472
|
},
|
|
@@ -462,35 +474,35 @@ var N = ({ type: e }) => {
|
|
|
462
474
|
id: "edit",
|
|
463
475
|
label: "Review connector settings",
|
|
464
476
|
description: "Confirm the name, visibility and channel-specific configuration.",
|
|
465
|
-
icon: /* @__PURE__ */
|
|
466
|
-
onClick:
|
|
477
|
+
icon: /* @__PURE__ */ b(A, { size: 16 }),
|
|
478
|
+
onClick: _t
|
|
467
479
|
},
|
|
468
480
|
{
|
|
469
481
|
id: "bots",
|
|
470
482
|
label: "Check your bots",
|
|
471
483
|
description: "Make sure the bot you are routing to is active and configured.",
|
|
472
|
-
icon: /* @__PURE__ */
|
|
473
|
-
onClick: () =>
|
|
484
|
+
icon: /* @__PURE__ */ b(T, { size: 16 }),
|
|
485
|
+
onClick: () => F("bots")
|
|
474
486
|
}
|
|
475
487
|
]
|
|
476
488
|
}),
|
|
477
|
-
|
|
489
|
+
dt && /* @__PURE__ */ x(s, { children: [/* @__PURE__ */ x(u, {
|
|
478
490
|
className: "flex flex-row items-center justify-between",
|
|
479
|
-
children: [/* @__PURE__ */
|
|
491
|
+
children: [/* @__PURE__ */ b(d, { children: "Add Route" }), /* @__PURE__ */ b(o, {
|
|
480
492
|
variant: "ghost",
|
|
481
493
|
size: "icon",
|
|
482
494
|
onClick: () => W(!1),
|
|
483
|
-
children: /* @__PURE__ */
|
|
495
|
+
children: /* @__PURE__ */ b(M, { size: 16 })
|
|
484
496
|
})]
|
|
485
|
-
}), /* @__PURE__ */
|
|
497
|
+
}), /* @__PURE__ */ x(c, {
|
|
486
498
|
className: "space-y-4",
|
|
487
499
|
children: [
|
|
488
|
-
/* @__PURE__ */
|
|
500
|
+
/* @__PURE__ */ x("div", {
|
|
489
501
|
className: "grid grid-cols-2 gap-4",
|
|
490
|
-
children: [/* @__PURE__ */
|
|
502
|
+
children: [/* @__PURE__ */ b(p, {
|
|
491
503
|
label: "Location ID",
|
|
492
504
|
required: !0,
|
|
493
|
-
children: /* @__PURE__ */
|
|
505
|
+
children: /* @__PURE__ */ b(m, {
|
|
494
506
|
placeholder: "e.g., #general or channel ID",
|
|
495
507
|
value: G.locationId,
|
|
496
508
|
onChange: (e) => K({
|
|
@@ -498,9 +510,9 @@ var N = ({ type: e }) => {
|
|
|
498
510
|
locationId: e.target.value
|
|
499
511
|
})
|
|
500
512
|
})
|
|
501
|
-
}), /* @__PURE__ */
|
|
513
|
+
}), /* @__PURE__ */ b(p, {
|
|
502
514
|
label: "Location Name",
|
|
503
|
-
children: /* @__PURE__ */
|
|
515
|
+
children: /* @__PURE__ */ b(m, {
|
|
504
516
|
placeholder: "Friendly name (optional)",
|
|
505
517
|
value: G.locationName,
|
|
506
518
|
onChange: (e) => K({
|
|
@@ -510,47 +522,47 @@ var N = ({ type: e }) => {
|
|
|
510
522
|
})
|
|
511
523
|
})]
|
|
512
524
|
}),
|
|
513
|
-
/* @__PURE__ */
|
|
525
|
+
/* @__PURE__ */ b(p, {
|
|
514
526
|
label: "Connect to Bot",
|
|
515
527
|
required: !0,
|
|
516
|
-
children: /* @__PURE__ */
|
|
528
|
+
children: /* @__PURE__ */ x("select", {
|
|
517
529
|
className: "flex h-10 w-full rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm",
|
|
518
530
|
value: G.botId,
|
|
519
531
|
onChange: (e) => K({
|
|
520
532
|
...G,
|
|
521
533
|
botId: e.target.value
|
|
522
534
|
}),
|
|
523
|
-
children: [/* @__PURE__ */
|
|
535
|
+
children: [/* @__PURE__ */ b("option", {
|
|
524
536
|
value: "",
|
|
525
537
|
children: "Select a bot..."
|
|
526
|
-
}),
|
|
538
|
+
}), Ve?.map((e) => /* @__PURE__ */ b("option", {
|
|
527
539
|
value: e.id,
|
|
528
540
|
children: e.name
|
|
529
541
|
}, e.id))]
|
|
530
542
|
})
|
|
531
543
|
}),
|
|
532
|
-
/* @__PURE__ */
|
|
544
|
+
/* @__PURE__ */ x("div", {
|
|
533
545
|
className: "flex justify-end gap-2",
|
|
534
|
-
children: [/* @__PURE__ */
|
|
546
|
+
children: [/* @__PURE__ */ b(o, {
|
|
535
547
|
variant: "outline",
|
|
536
548
|
onClick: () => W(!1),
|
|
537
549
|
children: "Cancel"
|
|
538
|
-
}), /* @__PURE__ */
|
|
539
|
-
onClick:
|
|
540
|
-
isLoading:
|
|
550
|
+
}), /* @__PURE__ */ b(o, {
|
|
551
|
+
onClick: gt,
|
|
552
|
+
isLoading: Ye.loading,
|
|
541
553
|
disabled: !G.locationId || !G.botId,
|
|
542
554
|
children: "Add Route"
|
|
543
555
|
})]
|
|
544
556
|
})
|
|
545
557
|
]
|
|
546
558
|
})] }),
|
|
547
|
-
|
|
559
|
+
H && /* @__PURE__ */ x(s, { children: [/* @__PURE__ */ b(u, { children: /* @__PURE__ */ b(d, { children: "Edit Channel" }) }), /* @__PURE__ */ x(c, {
|
|
548
560
|
className: "space-y-4",
|
|
549
561
|
children: [
|
|
550
|
-
/* @__PURE__ */
|
|
562
|
+
/* @__PURE__ */ b(p, {
|
|
551
563
|
label: "Connector Name",
|
|
552
564
|
required: !0,
|
|
553
|
-
children: /* @__PURE__ */
|
|
565
|
+
children: /* @__PURE__ */ b(m, {
|
|
554
566
|
value: q.name,
|
|
555
567
|
onChange: (e) => J({
|
|
556
568
|
...q,
|
|
@@ -558,9 +570,9 @@ var N = ({ type: e }) => {
|
|
|
558
570
|
})
|
|
559
571
|
})
|
|
560
572
|
}),
|
|
561
|
-
/* @__PURE__ */
|
|
573
|
+
/* @__PURE__ */ b(p, {
|
|
562
574
|
label: "Description",
|
|
563
|
-
children: /* @__PURE__ */
|
|
575
|
+
children: /* @__PURE__ */ b(h, {
|
|
564
576
|
value: q.description,
|
|
565
577
|
onChange: (e) => J({
|
|
566
578
|
...q,
|
|
@@ -569,9 +581,9 @@ var N = ({ type: e }) => {
|
|
|
569
581
|
rows: 2
|
|
570
582
|
})
|
|
571
583
|
}),
|
|
572
|
-
/* @__PURE__ */
|
|
584
|
+
/* @__PURE__ */ b(p, {
|
|
573
585
|
label: "Visibility",
|
|
574
|
-
children: /* @__PURE__ */
|
|
586
|
+
children: /* @__PURE__ */ x("select", {
|
|
575
587
|
className: "flex h-10 w-full rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm",
|
|
576
588
|
value: q.visibility,
|
|
577
589
|
onChange: (e) => J({
|
|
@@ -579,15 +591,15 @@ var N = ({ type: e }) => {
|
|
|
579
591
|
visibility: e.target.value
|
|
580
592
|
}),
|
|
581
593
|
children: [
|
|
582
|
-
/* @__PURE__ */
|
|
594
|
+
/* @__PURE__ */ b("option", {
|
|
583
595
|
value: "PRIVATE",
|
|
584
596
|
children: "Private"
|
|
585
597
|
}),
|
|
586
|
-
/* @__PURE__ */
|
|
598
|
+
/* @__PURE__ */ b("option", {
|
|
587
599
|
value: "WORKSPACE",
|
|
588
600
|
children: "Workspace"
|
|
589
601
|
}),
|
|
590
|
-
/* @__PURE__ */
|
|
602
|
+
/* @__PURE__ */ b("option", {
|
|
591
603
|
value: "PUBLIC",
|
|
592
604
|
children: "Public"
|
|
593
605
|
})
|
|
@@ -596,222 +608,228 @@ var N = ({ type: e }) => {
|
|
|
596
608
|
})
|
|
597
609
|
]
|
|
598
610
|
})] }),
|
|
599
|
-
/* @__PURE__ */
|
|
611
|
+
/* @__PURE__ */ x("div", {
|
|
600
612
|
className: "grid grid-cols-2 md:grid-cols-4 gap-4",
|
|
601
613
|
children: [
|
|
602
|
-
/* @__PURE__ */
|
|
614
|
+
/* @__PURE__ */ b(s, { children: /* @__PURE__ */ x(c, {
|
|
603
615
|
className: "pt-6 text-center",
|
|
604
616
|
children: [
|
|
605
|
-
/* @__PURE__ */
|
|
617
|
+
/* @__PURE__ */ b("div", {
|
|
606
618
|
className: "p-3 rounded-full bg-action-primary-bg/10 w-fit mx-auto mb-2",
|
|
607
|
-
children: /* @__PURE__ */
|
|
619
|
+
children: /* @__PURE__ */ b(Ie, { type: Q })
|
|
608
620
|
}),
|
|
609
|
-
/* @__PURE__ */
|
|
621
|
+
/* @__PURE__ */ b("p", {
|
|
610
622
|
className: "text-lg font-bold capitalize",
|
|
611
623
|
children: L.type.toLowerCase().replace("_", " ")
|
|
612
624
|
}),
|
|
613
|
-
/* @__PURE__ */
|
|
625
|
+
/* @__PURE__ */ b("p", {
|
|
614
626
|
className: "text-sm text-text-secondary",
|
|
615
627
|
children: "Channel Type"
|
|
616
628
|
})
|
|
617
629
|
]
|
|
618
630
|
}) }),
|
|
619
|
-
/* @__PURE__ */
|
|
631
|
+
/* @__PURE__ */ x(ye, {
|
|
620
632
|
treatment: "glass",
|
|
621
633
|
glow: !0,
|
|
622
634
|
className: "p-6 text-center",
|
|
623
|
-
children: [/* @__PURE__ */
|
|
635
|
+
children: [/* @__PURE__ */ b("p", {
|
|
624
636
|
className: "text-3xl font-bold tabular-nums text-text-primary",
|
|
625
637
|
children: Z.length
|
|
626
|
-
}), /* @__PURE__ */
|
|
638
|
+
}), /* @__PURE__ */ b("p", {
|
|
627
639
|
className: "text-sm text-text-secondary",
|
|
628
640
|
children: "Active Routes"
|
|
629
641
|
})]
|
|
630
642
|
}),
|
|
631
|
-
/* @__PURE__ */
|
|
643
|
+
/* @__PURE__ */ b(s, { children: /* @__PURE__ */ x(c, {
|
|
632
644
|
className: "pt-6 text-center",
|
|
633
|
-
children: [/* @__PURE__ */
|
|
645
|
+
children: [/* @__PURE__ */ b("p", {
|
|
634
646
|
className: "text-3xl font-bold text-text-primary capitalize",
|
|
635
647
|
children: L.visibility.toLowerCase()
|
|
636
|
-
}), /* @__PURE__ */
|
|
648
|
+
}), /* @__PURE__ */ b("p", {
|
|
637
649
|
className: "text-sm text-text-secondary",
|
|
638
650
|
children: "Visibility"
|
|
639
651
|
})]
|
|
640
652
|
}) }),
|
|
641
|
-
/* @__PURE__ */
|
|
653
|
+
/* @__PURE__ */ b(s, { children: /* @__PURE__ */ x(c, {
|
|
642
654
|
className: "pt-6 text-center",
|
|
643
|
-
children: [/* @__PURE__ */
|
|
655
|
+
children: [/* @__PURE__ */ b("p", {
|
|
644
656
|
className: "text-3xl font-bold text-text-primary",
|
|
645
657
|
children: L.revision
|
|
646
|
-
}), /* @__PURE__ */
|
|
658
|
+
}), /* @__PURE__ */ b("p", {
|
|
647
659
|
className: "text-sm text-text-secondary",
|
|
648
660
|
children: "Revision"
|
|
649
661
|
})]
|
|
650
662
|
}) })
|
|
651
663
|
]
|
|
652
664
|
}),
|
|
653
|
-
$ && /* @__PURE__ */
|
|
665
|
+
$ && /* @__PURE__ */ x(s, { children: [/* @__PURE__ */ b(u, { children: /* @__PURE__ */ x(d, {
|
|
654
666
|
className: "flex items-center gap-2",
|
|
655
|
-
children: [/* @__PURE__ */
|
|
656
|
-
}) }), /* @__PURE__ */
|
|
667
|
+
children: [/* @__PURE__ */ b(E, { size: 18 }), "Widget Configuration"]
|
|
668
|
+
}) }), /* @__PURE__ */ x(c, { children: [/* @__PURE__ */ x("div", {
|
|
657
669
|
className: "grid grid-cols-2 md:grid-cols-3 gap-6",
|
|
658
670
|
children: [
|
|
659
|
-
/* @__PURE__ */
|
|
671
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
660
672
|
className: "text-sm text-text-secondary",
|
|
661
673
|
children: "Allowed Origins"
|
|
662
|
-
}), $.allowedOrigins.length > 0 ? /* @__PURE__ */
|
|
674
|
+
}), $.allowedOrigins.length > 0 ? /* @__PURE__ */ b("div", {
|
|
663
675
|
className: "flex flex-wrap gap-1 mt-1",
|
|
664
|
-
children: $.allowedOrigins.map((e) => /* @__PURE__ */
|
|
676
|
+
children: $.allowedOrigins.map((e) => /* @__PURE__ */ b(f, {
|
|
665
677
|
variant: "outline",
|
|
666
678
|
className: "font-mono text-xs",
|
|
667
679
|
children: e
|
|
668
680
|
}, e))
|
|
669
|
-
}) : /* @__PURE__ */
|
|
681
|
+
}) : /* @__PURE__ */ b("p", {
|
|
670
682
|
className: "font-medium",
|
|
671
683
|
children: "Any origin"
|
|
672
684
|
})] }),
|
|
673
|
-
/* @__PURE__ */
|
|
685
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
674
686
|
className: "text-sm text-text-secondary",
|
|
675
687
|
children: "Theme"
|
|
676
|
-
}), /* @__PURE__ */
|
|
688
|
+
}), /* @__PURE__ */ x("div", {
|
|
677
689
|
className: "flex items-center gap-2 mt-1",
|
|
678
|
-
children: [/* @__PURE__ */
|
|
690
|
+
children: [/* @__PURE__ */ b("div", {
|
|
679
691
|
className: "w-6 h-6 rounded border border-border-subtle",
|
|
680
692
|
style: { backgroundColor: $.primaryColor }
|
|
681
|
-
}), /* @__PURE__ */
|
|
693
|
+
}), /* @__PURE__ */ b("span", {
|
|
682
694
|
className: "font-mono text-sm",
|
|
683
695
|
children: $.primaryColor
|
|
684
696
|
})]
|
|
685
697
|
})] }),
|
|
686
|
-
/* @__PURE__ */
|
|
698
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
687
699
|
className: "text-sm text-text-secondary",
|
|
688
700
|
children: "Font Family"
|
|
689
|
-
}), /* @__PURE__ */
|
|
701
|
+
}), /* @__PURE__ */ b("p", {
|
|
690
702
|
className: "font-medium",
|
|
691
703
|
children: $.fontFamily
|
|
692
704
|
})] })
|
|
693
705
|
]
|
|
694
|
-
}), $.starterPrompts.length > 0 && /* @__PURE__ */
|
|
706
|
+
}), $.starterPrompts.length > 0 && /* @__PURE__ */ x("div", {
|
|
695
707
|
className: "mt-4 pt-4 border-t border-border-subtle",
|
|
696
|
-
children: [/* @__PURE__ */
|
|
708
|
+
children: [/* @__PURE__ */ b("p", {
|
|
697
709
|
className: "text-sm text-text-secondary mb-2",
|
|
698
710
|
children: "Starter Prompts"
|
|
699
|
-
}), /* @__PURE__ */
|
|
711
|
+
}), /* @__PURE__ */ b("div", {
|
|
700
712
|
className: "flex flex-wrap gap-2",
|
|
701
|
-
children: $.starterPrompts.map((e, t) => /* @__PURE__ */
|
|
713
|
+
children: $.starterPrompts.map((e, t) => /* @__PURE__ */ b(f, {
|
|
702
714
|
variant: "secondary",
|
|
703
715
|
children: e
|
|
704
716
|
}, t))
|
|
705
717
|
})]
|
|
706
718
|
})] })] }),
|
|
707
|
-
/* @__PURE__ */
|
|
719
|
+
/* @__PURE__ */ x(s, { children: [/* @__PURE__ */ x(u, {
|
|
708
720
|
className: "flex flex-row items-center justify-between",
|
|
709
|
-
children: [/* @__PURE__ */
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
721
|
+
children: [/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b(d, { children: "Routes" }), /* @__PURE__ */ b(l, { children: "Routes connect this channel to your bots" })] }), /* @__PURE__ */ b(i, {
|
|
722
|
+
permission: r.CHANNEL_CREATE,
|
|
723
|
+
children: /* @__PURE__ */ b(o, {
|
|
724
|
+
variant: "outline",
|
|
725
|
+
size: "sm",
|
|
726
|
+
leftIcon: /* @__PURE__ */ b(D, { size: 14 }),
|
|
727
|
+
onClick: () => W(!0),
|
|
728
|
+
children: "Add Route"
|
|
729
|
+
})
|
|
715
730
|
})]
|
|
716
|
-
}), /* @__PURE__ */
|
|
731
|
+
}), /* @__PURE__ */ b(c, { children: Z.length > 0 ? /* @__PURE__ */ b("div", {
|
|
717
732
|
className: "space-y-3",
|
|
718
|
-
children: Z.map((e) => /* @__PURE__ */
|
|
733
|
+
children: Z.map((e) => /* @__PURE__ */ x("div", {
|
|
719
734
|
className: "flex items-center justify-between p-4 border border-border-subtle rounded-lg",
|
|
720
|
-
children: [/* @__PURE__ */
|
|
735
|
+
children: [/* @__PURE__ */ x("div", {
|
|
721
736
|
className: "flex items-center gap-4",
|
|
722
|
-
children: [/* @__PURE__ */
|
|
737
|
+
children: [/* @__PURE__ */ b("div", {
|
|
723
738
|
className: "p-2 rounded-lg bg-bg-sunken",
|
|
724
|
-
children: /* @__PURE__ */
|
|
739
|
+
children: /* @__PURE__ */ b(T, {
|
|
725
740
|
size: 18,
|
|
726
741
|
className: "text-text-secondary"
|
|
727
742
|
})
|
|
728
|
-
}), /* @__PURE__ */
|
|
743
|
+
}), /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
729
744
|
className: "font-medium",
|
|
730
|
-
children:
|
|
731
|
-
}), /* @__PURE__ */
|
|
745
|
+
children: _(e, "locationName") ?? e.locationId
|
|
746
|
+
}), /* @__PURE__ */ x("p", {
|
|
732
747
|
className: "text-sm text-text-secondary",
|
|
733
|
-
children: ["Connected to: ",
|
|
748
|
+
children: ["Connected to: ", _(e, "appName") ?? e.appId]
|
|
734
749
|
})] })]
|
|
735
|
-
}), /* @__PURE__ */
|
|
750
|
+
}), /* @__PURE__ */ x("div", {
|
|
736
751
|
className: "flex items-center gap-2",
|
|
737
|
-
children: [/* @__PURE__ */
|
|
752
|
+
children: [/* @__PURE__ */ x(f, {
|
|
738
753
|
variant: "outline",
|
|
739
754
|
children: ["Rev ", e.revision]
|
|
740
|
-
}), /* @__PURE__ */
|
|
755
|
+
}), /* @__PURE__ */ b(o, {
|
|
741
756
|
variant: "ghost",
|
|
742
757
|
size: "sm",
|
|
743
|
-
children: /* @__PURE__ */
|
|
758
|
+
children: /* @__PURE__ */ b(Ae, { size: 14 })
|
|
744
759
|
})]
|
|
745
760
|
})]
|
|
746
761
|
}, e.id))
|
|
747
|
-
}) : /* @__PURE__ */
|
|
762
|
+
}) : /* @__PURE__ */ b(ie, {
|
|
748
763
|
illustration: "empty-data",
|
|
749
764
|
title: "No routes configured",
|
|
750
765
|
description: "Add a route to connect this channel to a bot.",
|
|
751
|
-
action: /* @__PURE__ */
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
766
|
+
action: /* @__PURE__ */ b(i, {
|
|
767
|
+
permission: r.CHANNEL_CREATE,
|
|
768
|
+
children: /* @__PURE__ */ b(o, {
|
|
769
|
+
leftIcon: /* @__PURE__ */ b(D, { size: 16 }),
|
|
770
|
+
onClick: () => W(!0),
|
|
771
|
+
children: "Add Route"
|
|
772
|
+
})
|
|
755
773
|
})
|
|
756
774
|
}) })] }),
|
|
757
|
-
L.type === "SLACK" && L.credentialsRefId && /* @__PURE__ */
|
|
775
|
+
L.type === "SLACK" && L.credentialsRefId && /* @__PURE__ */ x(s, { children: [/* @__PURE__ */ x(u, { children: [/* @__PURE__ */ x(d, {
|
|
758
776
|
className: "flex items-center gap-2",
|
|
759
|
-
children: [/* @__PURE__ */
|
|
760
|
-
}), /* @__PURE__ */
|
|
777
|
+
children: [/* @__PURE__ */ b(j, { size: 18 }), "Your Slack Account"]
|
|
778
|
+
}), /* @__PURE__ */ b(l, { children: "Connect your personal Slack account to receive direct messages from this bot" })] }), /* @__PURE__ */ x(c, { children: [it && /* @__PURE__ */ x("div", {
|
|
761
779
|
className: "mb-4 flex items-start gap-2 rounded-lg border border-status-error-border/40 bg-status-error-bg/10 px-3 py-2 text-sm text-status-error-text",
|
|
762
|
-
children: [/* @__PURE__ */
|
|
763
|
-
onClick: () =>
|
|
780
|
+
children: [/* @__PURE__ */ b("span", { children: it }), /* @__PURE__ */ b("button", {
|
|
781
|
+
onClick: () => V(null),
|
|
764
782
|
className: "ml-auto cursor-pointer text-status-error-text/70 hover:text-status-error-text",
|
|
765
|
-
children: /* @__PURE__ */
|
|
783
|
+
children: /* @__PURE__ */ b(M, { size: 14 })
|
|
766
784
|
})]
|
|
767
|
-
}),
|
|
785
|
+
}), $e ? /* @__PURE__ */ x("div", {
|
|
768
786
|
className: "flex items-center gap-2 py-4 text-text-secondary",
|
|
769
|
-
children: [/* @__PURE__ */
|
|
787
|
+
children: [/* @__PURE__ */ b(w, {
|
|
770
788
|
size: 16,
|
|
771
789
|
className: "animate-spin"
|
|
772
|
-
}), /* @__PURE__ */
|
|
790
|
+
}), /* @__PURE__ */ b("span", {
|
|
773
791
|
className: "text-sm",
|
|
774
792
|
children: "Linking Slack connection..."
|
|
775
793
|
})]
|
|
776
|
-
}) :
|
|
794
|
+
}) : Xe ? /* @__PURE__ */ x("div", {
|
|
777
795
|
className: "flex items-center gap-2 py-4 text-text-secondary",
|
|
778
|
-
children: [/* @__PURE__ */
|
|
796
|
+
children: [/* @__PURE__ */ b(w, {
|
|
779
797
|
size: 16,
|
|
780
798
|
className: "animate-spin"
|
|
781
|
-
}), /* @__PURE__ */
|
|
799
|
+
}), /* @__PURE__ */ b("span", {
|
|
782
800
|
className: "text-sm",
|
|
783
801
|
children: "Checking connection..."
|
|
784
802
|
})]
|
|
785
|
-
}) :
|
|
803
|
+
}) : z && z.dmAllowed ? /* @__PURE__ */ x("div", {
|
|
786
804
|
className: "space-y-4",
|
|
787
805
|
children: [
|
|
788
|
-
/* @__PURE__ */
|
|
806
|
+
/* @__PURE__ */ x("div", {
|
|
789
807
|
className: "flex items-center gap-3 p-3 rounded-lg bg-bg-sunken",
|
|
790
808
|
children: [
|
|
791
|
-
/* @__PURE__ */
|
|
809
|
+
/* @__PURE__ */ b(Oe, {
|
|
792
810
|
size: 20,
|
|
793
811
|
className: "text-green-600 shrink-0"
|
|
794
812
|
}),
|
|
795
|
-
/* @__PURE__ */
|
|
813
|
+
/* @__PURE__ */ x("div", {
|
|
796
814
|
className: "min-w-0 flex-1",
|
|
797
815
|
children: [
|
|
798
|
-
/* @__PURE__ */
|
|
816
|
+
/* @__PURE__ */ b("p", {
|
|
799
817
|
className: "font-medium text-sm",
|
|
800
|
-
children:
|
|
818
|
+
children: z.externalDisplayName || z.externalUsername || z.externalUserId
|
|
801
819
|
}),
|
|
802
|
-
|
|
820
|
+
z.externalUsername && z.externalDisplayName && /* @__PURE__ */ x("p", {
|
|
803
821
|
className: "text-xs text-text-secondary",
|
|
804
|
-
children: ["@",
|
|
822
|
+
children: ["@", z.externalUsername]
|
|
805
823
|
}),
|
|
806
|
-
|
|
824
|
+
z.connectedAt && /* @__PURE__ */ x("p", {
|
|
807
825
|
className: "text-xs text-text-secondary",
|
|
808
|
-
children: ["Connected ", new Date(
|
|
826
|
+
children: ["Connected ", new Date(z.connectedAt).toLocaleDateString()]
|
|
809
827
|
})
|
|
810
828
|
]
|
|
811
829
|
}),
|
|
812
|
-
/* @__PURE__ */
|
|
830
|
+
/* @__PURE__ */ b("div", {
|
|
813
831
|
className: "flex items-center gap-1",
|
|
814
|
-
children:
|
|
832
|
+
children: z.isTokenExpired && /* @__PURE__ */ b(f, {
|
|
815
833
|
variant: "outline",
|
|
816
834
|
className: "text-xs text-amber-600 border-amber-400",
|
|
817
835
|
children: "Token expired"
|
|
@@ -819,126 +837,126 @@ var N = ({ type: e }) => {
|
|
|
819
837
|
})
|
|
820
838
|
]
|
|
821
839
|
}),
|
|
822
|
-
/* @__PURE__ */
|
|
840
|
+
/* @__PURE__ */ x("div", {
|
|
823
841
|
className: "flex items-center justify-between p-3 border border-border-subtle rounded-lg",
|
|
824
|
-
children: [/* @__PURE__ */
|
|
842
|
+
children: [/* @__PURE__ */ x("div", {
|
|
825
843
|
className: "flex items-center gap-2",
|
|
826
|
-
children: [
|
|
844
|
+
children: [z.notificationsEnabled ? /* @__PURE__ */ b(Ee, {
|
|
827
845
|
size: 16,
|
|
828
846
|
className: "text-primary"
|
|
829
|
-
}) : /* @__PURE__ */
|
|
847
|
+
}) : /* @__PURE__ */ b(De, {
|
|
830
848
|
size: 16,
|
|
831
849
|
className: "text-text-secondary"
|
|
832
|
-
}), /* @__PURE__ */
|
|
850
|
+
}), /* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
833
851
|
className: "text-sm font-medium",
|
|
834
852
|
children: "DM Notifications"
|
|
835
|
-
}), /* @__PURE__ */
|
|
853
|
+
}), /* @__PURE__ */ b("p", {
|
|
836
854
|
className: "text-xs text-text-secondary",
|
|
837
|
-
children:
|
|
855
|
+
children: z.notificationsEnabled ? "You will receive bot DMs" : "DM notifications are paused"
|
|
838
856
|
})] })]
|
|
839
|
-
}), /* @__PURE__ */
|
|
857
|
+
}), /* @__PURE__ */ b(o, {
|
|
840
858
|
variant: "outline",
|
|
841
859
|
size: "sm",
|
|
842
|
-
onClick:
|
|
843
|
-
isLoading:
|
|
844
|
-
children:
|
|
860
|
+
onClick: st,
|
|
861
|
+
isLoading: tt,
|
|
862
|
+
children: z.notificationsEnabled ? "Disable" : "Enable"
|
|
845
863
|
})]
|
|
846
864
|
}),
|
|
847
|
-
/* @__PURE__ */
|
|
865
|
+
/* @__PURE__ */ x("div", {
|
|
848
866
|
className: "flex gap-2 justify-end pt-2",
|
|
849
|
-
children: [
|
|
867
|
+
children: [z.isTokenExpired && /* @__PURE__ */ b(o, {
|
|
850
868
|
variant: "outline",
|
|
851
869
|
size: "sm",
|
|
852
|
-
leftIcon: /* @__PURE__ */
|
|
853
|
-
onClick:
|
|
870
|
+
leftIcon: /* @__PURE__ */ b(j, { size: 14 }),
|
|
871
|
+
onClick: ot,
|
|
854
872
|
children: "Reconnect"
|
|
855
|
-
}), /* @__PURE__ */
|
|
873
|
+
}), /* @__PURE__ */ b(o, {
|
|
856
874
|
variant: "destructive",
|
|
857
875
|
size: "sm",
|
|
858
|
-
leftIcon: /* @__PURE__ */
|
|
859
|
-
onClick:
|
|
860
|
-
isLoading:
|
|
876
|
+
leftIcon: /* @__PURE__ */ b(Ne, { size: 14 }),
|
|
877
|
+
onClick: ct,
|
|
878
|
+
isLoading: rt,
|
|
861
879
|
children: "Disconnect"
|
|
862
880
|
})]
|
|
863
881
|
})
|
|
864
882
|
]
|
|
865
|
-
}) : /* @__PURE__ */
|
|
883
|
+
}) : /* @__PURE__ */ x("div", {
|
|
866
884
|
className: "flex flex-col items-center gap-4 py-8 text-center",
|
|
867
885
|
children: [
|
|
868
|
-
/* @__PURE__ */
|
|
886
|
+
/* @__PURE__ */ b("div", {
|
|
869
887
|
className: "p-4 rounded-full bg-bg-sunken",
|
|
870
|
-
children: /* @__PURE__ */
|
|
888
|
+
children: /* @__PURE__ */ b(j, {
|
|
871
889
|
size: 32,
|
|
872
890
|
className: "text-text-secondary"
|
|
873
891
|
})
|
|
874
892
|
}),
|
|
875
|
-
/* @__PURE__ */
|
|
893
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
876
894
|
className: "font-medium",
|
|
877
895
|
children: "No personal account connected"
|
|
878
|
-
}), /* @__PURE__ */
|
|
896
|
+
}), /* @__PURE__ */ b("p", {
|
|
879
897
|
className: "text-sm text-text-secondary mt-1",
|
|
880
898
|
children: "Connect your Slack account so the bot can send you direct messages"
|
|
881
899
|
})] }),
|
|
882
|
-
/* @__PURE__ */
|
|
883
|
-
leftIcon: /* @__PURE__ */
|
|
884
|
-
onClick:
|
|
900
|
+
/* @__PURE__ */ b(o, {
|
|
901
|
+
leftIcon: /* @__PURE__ */ b(j, { size: 16 }),
|
|
902
|
+
onClick: ot,
|
|
885
903
|
children: "Connect with Slack"
|
|
886
904
|
})
|
|
887
905
|
]
|
|
888
906
|
})] })] }),
|
|
889
|
-
L.defaultPolicyBindings && /* @__PURE__ */
|
|
907
|
+
L.defaultPolicyBindings && /* @__PURE__ */ x(s, { children: [/* @__PURE__ */ x(u, { children: [/* @__PURE__ */ x(d, {
|
|
890
908
|
className: "flex items-center gap-2",
|
|
891
|
-
children: [/* @__PURE__ */
|
|
892
|
-
}), /* @__PURE__ */
|
|
909
|
+
children: [/* @__PURE__ */ b(je, { size: 18 }), "Default Policy Bindings"]
|
|
910
|
+
}), /* @__PURE__ */ b(l, { children: "Default policies applied to all routes on this connector" })] }), /* @__PURE__ */ b(c, { children: /* @__PURE__ */ b("div", {
|
|
893
911
|
className: "grid grid-cols-2 md:grid-cols-4 gap-4",
|
|
894
|
-
children: Object.entries(L.defaultPolicyBindings).map(([e, t]) => t ? /* @__PURE__ */
|
|
912
|
+
children: Object.entries(L.defaultPolicyBindings).map(([e, t]) => t ? /* @__PURE__ */ x("div", {
|
|
895
913
|
className: "p-3 bg-bg-sunken rounded-lg",
|
|
896
|
-
children: [/* @__PURE__ */
|
|
914
|
+
children: [/* @__PURE__ */ b("p", {
|
|
897
915
|
className: "text-xs text-text-secondary capitalize",
|
|
898
916
|
children: e.replace("PolicyId", "").replace(/([A-Z])/g, " $1")
|
|
899
|
-
}), /* @__PURE__ */
|
|
917
|
+
}), /* @__PURE__ */ b("p", {
|
|
900
918
|
className: "font-medium text-sm truncate",
|
|
901
919
|
children: String(t)
|
|
902
920
|
})]
|
|
903
921
|
}, e) : null)
|
|
904
922
|
}) })] }),
|
|
905
|
-
/* @__PURE__ */
|
|
923
|
+
/* @__PURE__ */ x(s, { children: [/* @__PURE__ */ b(u, { children: /* @__PURE__ */ x(d, {
|
|
906
924
|
className: "flex items-center gap-2",
|
|
907
|
-
children: [/* @__PURE__ */
|
|
908
|
-
}) }), /* @__PURE__ */
|
|
925
|
+
children: [/* @__PURE__ */ b(A, { size: 18 }), "Metadata"]
|
|
926
|
+
}) }), /* @__PURE__ */ b(c, { children: /* @__PURE__ */ x("div", {
|
|
909
927
|
className: "grid grid-cols-2 md:grid-cols-4 gap-6 text-sm",
|
|
910
928
|
children: [
|
|
911
|
-
/* @__PURE__ */
|
|
929
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
912
930
|
className: "text-text-secondary",
|
|
913
931
|
children: "Created"
|
|
914
|
-
}), /* @__PURE__ */
|
|
932
|
+
}), /* @__PURE__ */ b("p", {
|
|
915
933
|
className: "font-medium",
|
|
916
934
|
children: n(L.createdAt)
|
|
917
935
|
})] }),
|
|
918
|
-
/* @__PURE__ */
|
|
936
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
919
937
|
className: "text-text-secondary",
|
|
920
938
|
children: "Updated"
|
|
921
|
-
}), /* @__PURE__ */
|
|
939
|
+
}), /* @__PURE__ */ b("p", {
|
|
922
940
|
className: "font-medium",
|
|
923
941
|
children: n(L.updatedAt)
|
|
924
942
|
})] }),
|
|
925
|
-
/* @__PURE__ */
|
|
943
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
926
944
|
className: "text-text-secondary",
|
|
927
945
|
children: "Credentials"
|
|
928
|
-
}), /* @__PURE__ */
|
|
946
|
+
}), /* @__PURE__ */ b("p", {
|
|
929
947
|
className: "font-medium",
|
|
930
948
|
children: L.credentialsRefId || "Not configured"
|
|
931
949
|
})] }),
|
|
932
|
-
/* @__PURE__ */
|
|
950
|
+
/* @__PURE__ */ x("div", { children: [/* @__PURE__ */ b("p", {
|
|
933
951
|
className: "text-text-secondary",
|
|
934
952
|
children: "Tags"
|
|
935
|
-
}), /* @__PURE__ */
|
|
953
|
+
}), /* @__PURE__ */ b("div", {
|
|
936
954
|
className: "flex gap-1",
|
|
937
|
-
children: L.tags.length > 0 ? L.tags.map((e) => /* @__PURE__ */
|
|
955
|
+
children: L.tags.length > 0 ? L.tags.map((e) => /* @__PURE__ */ b(f, {
|
|
938
956
|
variant: "secondary",
|
|
939
957
|
className: "text-xs",
|
|
940
958
|
children: e
|
|
941
|
-
}, e)) : /* @__PURE__ */
|
|
959
|
+
}, e)) : /* @__PURE__ */ b("span", {
|
|
942
960
|
className: "text-text-secondary",
|
|
943
961
|
children: "None"
|
|
944
962
|
})
|
|
@@ -950,6 +968,6 @@ var N = ({ type: e }) => {
|
|
|
950
968
|
});
|
|
951
969
|
};
|
|
952
970
|
//#endregion
|
|
953
|
-
export {
|
|
971
|
+
export { F as ChannelDetailPage };
|
|
954
972
|
|
|
955
973
|
//# sourceMappingURL=ChannelDetailPage.js.map
|