@burdenoff/microfe-channel 2026.518.2 → 2026.520.1
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/channel/ChannelRoot.d.ts.map +1 -1
- package/dist/channel/ChannelRoot.js +23 -29
- package/dist/channel/ChannelRoot.js.map +1 -1
- package/dist/channel/components/AdapterCredentialsForm.js +7 -7
- package/dist/channel/components/AdapterCredentialsForm.js.map +1 -1
- package/dist/channel/components/FeatureNotEnabled.d.ts +3 -0
- package/dist/channel/components/FeatureNotEnabled.d.ts.map +1 -1
- package/dist/channel/components/FeatureNotEnabled.js +31 -13
- package/dist/channel/components/FeatureNotEnabled.js.map +1 -1
- package/dist/channel/hooks/useChannels.d.ts +17 -3
- package/dist/channel/hooks/useChannels.d.ts.map +1 -1
- package/dist/channel/hooks/useChannels.js +64 -18
- package/dist/channel/hooks/useChannels.js.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelDashboardPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelDashboardPage.js +307 -274
- package/dist/channel/modules/channels/pages/ChannelDashboardPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelDetailsPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelDetailsPage.js +31 -31
- package/dist/channel/modules/channels/pages/ChannelDetailsPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelSettingsPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelSettingsPage.js +22 -22
- package/dist/channel/modules/channels/pages/ChannelSettingsPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelUsersPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelUsersPage.js +193 -137
- package/dist/channel/modules/channels/pages/ChannelUsersPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelsListPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/ChannelsListPage.js +320 -248
- package/dist/channel/modules/channels/pages/ChannelsListPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/ConnectionDetailsPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/ConnectionDetailsPage.js +5 -5
- package/dist/channel/modules/channels/pages/ConnectionDetailsPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/ConnectionsListPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/ConnectionsListPage.js +160 -112
- package/dist/channel/modules/channels/pages/ConnectionsListPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/CreateChannelPage.js +4 -4
- package/dist/channel/modules/channels/pages/CreateChannelPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/DeliveryHistoryPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/DeliveryHistoryPage.js +221 -157
- package/dist/channel/modules/channels/pages/DeliveryHistoryPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/EditChannelPage.js +9 -9
- package/dist/channel/modules/channels/pages/EditChannelPage.js.map +1 -1
- package/dist/channel/modules/channels/pages/SendMessagePage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/SendMessagePage.js +89 -89
- package/dist/channel/modules/channels/pages/SendMessagePage.js.map +1 -1
- package/dist/channel/modules/channels/pages/WebhookEventsPage.d.ts.map +1 -1
- package/dist/channel/modules/channels/pages/WebhookEventsPage.js +188 -126
- package/dist/channel/modules/channels/pages/WebhookEventsPage.js.map +1 -1
- package/dist/generated/global-operations.d.ts +2 -0
- package/dist/generated/global-operations.d.ts.map +1 -1
- package/dist/generated/global-operations.js +2 -0
- package/dist/generated/global-operations.js.map +1 -1
- package/package.json +2 -2
|
@@ -5,14 +5,14 @@ import { CHANNEL_PERMISSIONS as r } from "../../../constants/permissions.js";
|
|
|
5
5
|
import { useExportChannelUsers as i } from "../hooks/useExport.js";
|
|
6
6
|
import { useCallback as a, useEffect as o, useState as s } from "react";
|
|
7
7
|
import { useI18n as c } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
8
|
-
import { AlertCircle as l, ArrowLeft as u, Bell as d, BellOff as f, CheckCircle2 as p,
|
|
9
|
-
import { useNavigate as
|
|
10
|
-
import { jsx as
|
|
8
|
+
import { AlertCircle as l, ArrowLeft as u, Bell as d, BellOff as f, CheckCircle2 as p, ChevronLeft as m, ChevronRight as h, Clock as g, Download as _, Loader2 as v, RefreshCw as y, User as b, UserCheck as x, XCircle as S } from "lucide-react";
|
|
9
|
+
import { useNavigate as C, useParams as w } from "react-router-dom";
|
|
10
|
+
import { Fragment as T, jsx as E, jsxs as D } from "react/jsx-runtime";
|
|
11
11
|
//#region src/channel/modules/channels/pages/ChannelUsersPage.tsx
|
|
12
|
-
var
|
|
12
|
+
var O = {
|
|
13
13
|
ONLINE: {
|
|
14
14
|
label: "Online",
|
|
15
|
-
color: "text-success-
|
|
15
|
+
color: "text-status-success-text"
|
|
16
16
|
},
|
|
17
17
|
OFFLINE: {
|
|
18
18
|
label: "Offline",
|
|
@@ -20,300 +20,307 @@ var T = {
|
|
|
20
20
|
},
|
|
21
21
|
AWAY: {
|
|
22
22
|
label: "Away",
|
|
23
|
-
color: "text-warning-
|
|
23
|
+
color: "text-status-warning-text"
|
|
24
24
|
},
|
|
25
25
|
DND: {
|
|
26
26
|
label: "Do Not Disturb",
|
|
27
|
-
color: "text-error-
|
|
27
|
+
color: "text-status-error-text"
|
|
28
28
|
}
|
|
29
|
-
},
|
|
29
|
+
}, k = {
|
|
30
30
|
PENDING: {
|
|
31
31
|
label: "Pending",
|
|
32
|
-
color: "text-warning-
|
|
33
|
-
icon:
|
|
32
|
+
color: "text-status-warning-text bg-status-warning-bg-subtle",
|
|
33
|
+
icon: g
|
|
34
34
|
},
|
|
35
35
|
APPROVED: {
|
|
36
36
|
label: "Approved",
|
|
37
|
-
color: "text-success-
|
|
37
|
+
color: "text-status-success-text bg-status-success-bg-subtle",
|
|
38
38
|
icon: p
|
|
39
39
|
},
|
|
40
40
|
EXPIRED: {
|
|
41
41
|
label: "Expired",
|
|
42
42
|
color: "text-muted-foreground bg-muted",
|
|
43
|
-
icon:
|
|
43
|
+
icon: S
|
|
44
44
|
}
|
|
45
45
|
};
|
|
46
|
-
function
|
|
47
|
-
let { channelId: p } =
|
|
48
|
-
let n =
|
|
46
|
+
function A() {
|
|
47
|
+
let { channelId: p } = w(), g = C(), { t: A } = c(), j = (e, t) => {
|
|
48
|
+
let n = A(e);
|
|
49
49
|
return n === e ? t : n;
|
|
50
|
-
}, { organizationId:
|
|
50
|
+
}, { organizationId: M } = e(), { triggerExport: N, isExporting: P, exportError: F } = i(M ?? void 0, p), [I, L] = s(!0), [R, z] = s([]), [B, V] = s(25), [H, U] = s(0), [W, G] = s(0), { channel: K, isLoading: q, error: J, fetchUserPlatformConnections: Y } = t(p), X = a(async (e = 0) => {
|
|
51
51
|
if (p) {
|
|
52
|
-
|
|
52
|
+
L(!0);
|
|
53
53
|
try {
|
|
54
|
-
|
|
54
|
+
let t = await Y(B, e * B);
|
|
55
|
+
z(t.items), U(t.total);
|
|
55
56
|
} finally {
|
|
56
|
-
|
|
57
|
+
L(!1);
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
60
|
}, [
|
|
60
61
|
p,
|
|
61
|
-
|
|
62
|
-
|
|
62
|
+
Y,
|
|
63
|
+
B
|
|
63
64
|
]);
|
|
64
65
|
o(() => {
|
|
65
|
-
Promise.resolve().then(() =>
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
66
|
+
Promise.resolve().then(() => {
|
|
67
|
+
G(0), X(0);
|
|
68
|
+
});
|
|
69
|
+
}, [B]), o(() => {
|
|
70
|
+
Promise.resolve().then(() => X(W));
|
|
71
|
+
}, [W]), o(() => {
|
|
72
|
+
Promise.resolve().then(() => X(0));
|
|
73
|
+
}, []);
|
|
74
|
+
let Z = Math.max(1, Math.ceil(H / B)), Q = W > 0, $ = W < Z - 1, ee = (e) => O[e] || O.OFFLINE, te = (e) => k[e] || k.EXPIRED;
|
|
75
|
+
return q ? /* @__PURE__ */ E("div", {
|
|
69
76
|
className: "flex items-center justify-center min-h-screen",
|
|
70
|
-
children: /* @__PURE__ */
|
|
77
|
+
children: /* @__PURE__ */ E(v, {
|
|
71
78
|
size: 32,
|
|
72
79
|
className: "animate-spin text-accent-primary"
|
|
73
80
|
})
|
|
74
|
-
}) :
|
|
81
|
+
}) : J || !K ? /* @__PURE__ */ E("div", {
|
|
75
82
|
className: "p-6",
|
|
76
|
-
children: /* @__PURE__ */
|
|
77
|
-
className: "flex items-center gap-3 p-4 bg-error-
|
|
83
|
+
children: /* @__PURE__ */ D("div", {
|
|
84
|
+
className: "flex items-center gap-3 p-4 bg-status-error-bg-subtle border border-status-error-border rounded-lg",
|
|
78
85
|
children: [
|
|
79
|
-
/* @__PURE__ */
|
|
86
|
+
/* @__PURE__ */ E(l, {
|
|
80
87
|
size: 20,
|
|
81
|
-
className: "text-error-
|
|
88
|
+
className: "text-status-error-text"
|
|
82
89
|
}),
|
|
83
|
-
/* @__PURE__ */
|
|
84
|
-
className: "text-sm font-medium text-error-
|
|
85
|
-
children:
|
|
90
|
+
/* @__PURE__ */ E("div", { children: /* @__PURE__ */ E("p", {
|
|
91
|
+
className: "text-sm font-medium text-status-error-text",
|
|
92
|
+
children: J || "Channel not found"
|
|
86
93
|
}) }),
|
|
87
|
-
/* @__PURE__ */
|
|
88
|
-
onClick: () =>
|
|
89
|
-
className: "ml-auto px-3 py-1 text-sm text-error-
|
|
94
|
+
/* @__PURE__ */ E("button", {
|
|
95
|
+
onClick: () => g(`/channels/${p}`),
|
|
96
|
+
className: "ml-auto px-3 py-1 text-sm text-status-error-text hover:bg-status-error-bg-subtle rounded transition-colors",
|
|
90
97
|
children: "Go Back"
|
|
91
98
|
})
|
|
92
99
|
]
|
|
93
100
|
})
|
|
94
|
-
}) : /* @__PURE__ */
|
|
101
|
+
}) : /* @__PURE__ */ E(n, {
|
|
95
102
|
permission: r.USER_PLATFORM_CONNECTION_READ,
|
|
96
|
-
children: /* @__PURE__ */
|
|
103
|
+
children: /* @__PURE__ */ D("div", {
|
|
97
104
|
className: "space-y-6 p-3 sm:p-6",
|
|
98
105
|
children: [
|
|
99
|
-
/* @__PURE__ */
|
|
106
|
+
/* @__PURE__ */ D("div", {
|
|
100
107
|
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
101
|
-
children: [/* @__PURE__ */
|
|
108
|
+
children: [/* @__PURE__ */ D("div", {
|
|
102
109
|
className: "flex items-center gap-3",
|
|
103
|
-
children: [/* @__PURE__ */
|
|
104
|
-
onClick: () =>
|
|
105
|
-
"aria-label":
|
|
110
|
+
children: [/* @__PURE__ */ E("button", {
|
|
111
|
+
onClick: () => g(`/channels/${p}`),
|
|
112
|
+
"aria-label": j("channel.backToChannel", "Back to channel"),
|
|
106
113
|
className: "p-2 text-muted-foreground hover:text-foreground hover:bg-muted rounded-lg transition-colors",
|
|
107
|
-
children: /* @__PURE__ */
|
|
114
|
+
children: /* @__PURE__ */ E(u, {
|
|
108
115
|
size: 20,
|
|
109
116
|
"aria-hidden": "true"
|
|
110
117
|
})
|
|
111
|
-
}), /* @__PURE__ */
|
|
118
|
+
}), /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("h1", {
|
|
112
119
|
className: "text-xl sm:text-2xl font-bold text-foreground",
|
|
113
|
-
children:
|
|
114
|
-
}), /* @__PURE__ */
|
|
120
|
+
children: j("channel.channelUsers", "Channel Users")
|
|
121
|
+
}), /* @__PURE__ */ D("p", {
|
|
115
122
|
className: "text-sm text-muted-foreground mt-1",
|
|
116
|
-
children: [
|
|
123
|
+
children: [K.name, " - User connections"]
|
|
117
124
|
})] })]
|
|
118
|
-
}), /* @__PURE__ */
|
|
125
|
+
}), /* @__PURE__ */ D("div", {
|
|
119
126
|
className: "flex items-center gap-3",
|
|
120
127
|
children: [
|
|
121
|
-
/* @__PURE__ */
|
|
122
|
-
value:
|
|
123
|
-
onChange: (e) =>
|
|
128
|
+
/* @__PURE__ */ D("select", {
|
|
129
|
+
value: B,
|
|
130
|
+
onChange: (e) => V(Number(e.target.value)),
|
|
124
131
|
className: "px-3 py-2 text-sm bg-surface border border-border rounded-lg focus:outline-none focus:ring-2 focus:ring-accent-primary/50 text-foreground",
|
|
125
132
|
children: [
|
|
126
|
-
/* @__PURE__ */
|
|
133
|
+
/* @__PURE__ */ E("option", {
|
|
127
134
|
value: 10,
|
|
128
135
|
children: "10 results"
|
|
129
136
|
}),
|
|
130
|
-
/* @__PURE__ */
|
|
137
|
+
/* @__PURE__ */ E("option", {
|
|
131
138
|
value: 25,
|
|
132
139
|
children: "25 results"
|
|
133
140
|
}),
|
|
134
|
-
/* @__PURE__ */
|
|
141
|
+
/* @__PURE__ */ E("option", {
|
|
135
142
|
value: 50,
|
|
136
143
|
children: "50 results"
|
|
137
144
|
}),
|
|
138
|
-
/* @__PURE__ */
|
|
145
|
+
/* @__PURE__ */ E("option", {
|
|
139
146
|
value: 100,
|
|
140
147
|
children: "100 results"
|
|
141
148
|
})
|
|
142
149
|
]
|
|
143
150
|
}),
|
|
144
|
-
/* @__PURE__ */
|
|
145
|
-
onClick:
|
|
146
|
-
disabled:
|
|
151
|
+
/* @__PURE__ */ D("button", {
|
|
152
|
+
onClick: () => void X(W),
|
|
153
|
+
disabled: I,
|
|
147
154
|
className: "flex items-center gap-2 px-4 py-2 text-sm font-medium text-muted-foreground hover:text-foreground hover:bg-muted rounded-lg transition-colors disabled:opacity-50",
|
|
148
|
-
children: [/* @__PURE__ */
|
|
155
|
+
children: [/* @__PURE__ */ E(y, {
|
|
149
156
|
size: 16,
|
|
150
|
-
className:
|
|
151
|
-
}),
|
|
157
|
+
className: I ? "animate-spin" : ""
|
|
158
|
+
}), j("channel.refresh", "Refresh")]
|
|
152
159
|
}),
|
|
153
|
-
/* @__PURE__ */
|
|
160
|
+
/* @__PURE__ */ E(n, {
|
|
154
161
|
permission: r.CHANNEL_ADMIN,
|
|
155
|
-
children: /* @__PURE__ */
|
|
156
|
-
onClick: () => void
|
|
157
|
-
disabled:
|
|
162
|
+
children: /* @__PURE__ */ D("button", {
|
|
163
|
+
onClick: () => void N(),
|
|
164
|
+
disabled: P,
|
|
158
165
|
className: "flex items-center gap-2 px-4 py-2 text-sm font-medium text-fg border border-border hover:bg-bg-elevated rounded-lg transition-colors disabled:opacity-50 disabled:cursor-not-allowed",
|
|
159
|
-
title:
|
|
160
|
-
children: [
|
|
166
|
+
title: j("channel.exportCSV", "Export to CSV"),
|
|
167
|
+
children: [P ? /* @__PURE__ */ E(v, {
|
|
161
168
|
size: 16,
|
|
162
169
|
className: "animate-spin"
|
|
163
|
-
}) : /* @__PURE__ */
|
|
170
|
+
}) : /* @__PURE__ */ E(_, { size: 16 }), j("channel.export", "Export")]
|
|
164
171
|
})
|
|
165
172
|
})
|
|
166
173
|
]
|
|
167
174
|
})]
|
|
168
175
|
}),
|
|
169
|
-
|
|
170
|
-
className: "p-4 bg-error-
|
|
171
|
-
children: [/* @__PURE__ */
|
|
176
|
+
F && /* @__PURE__ */ D("div", {
|
|
177
|
+
className: "p-4 bg-status-error-bg-subtle border border-status-error-border rounded-lg flex items-center gap-3",
|
|
178
|
+
children: [/* @__PURE__ */ E(l, {
|
|
172
179
|
size: 20,
|
|
173
|
-
className: "text-error-
|
|
174
|
-
}), /* @__PURE__ */
|
|
175
|
-
className: "text-sm text-error-
|
|
176
|
-
children:
|
|
180
|
+
className: "text-status-error-text"
|
|
181
|
+
}), /* @__PURE__ */ E("p", {
|
|
182
|
+
className: "text-sm text-status-error-text flex-1",
|
|
183
|
+
children: F
|
|
177
184
|
})]
|
|
178
185
|
}),
|
|
179
|
-
/* @__PURE__ */
|
|
186
|
+
/* @__PURE__ */ E("div", {
|
|
180
187
|
className: "p-4 bg-surface border border-border rounded-lg",
|
|
181
|
-
children: /* @__PURE__ */
|
|
188
|
+
children: /* @__PURE__ */ E("p", {
|
|
182
189
|
className: "text-sm text-muted-foreground",
|
|
183
190
|
children: "Users connected to this channel through OAuth or pairing. Manage notification preferences and DM authorization here."
|
|
184
191
|
})
|
|
185
192
|
}),
|
|
186
|
-
/* @__PURE__ */
|
|
193
|
+
/* @__PURE__ */ E("div", {
|
|
187
194
|
className: "bg-surface border border-border rounded-lg overflow-hidden",
|
|
188
|
-
children: /* @__PURE__ */
|
|
195
|
+
children: /* @__PURE__ */ E("div", {
|
|
189
196
|
className: "overflow-x-auto min-w-full",
|
|
190
|
-
children: /* @__PURE__ */
|
|
197
|
+
children: /* @__PURE__ */ D("table", {
|
|
191
198
|
className: "w-full min-w-[800px]",
|
|
192
|
-
children: [/* @__PURE__ */
|
|
199
|
+
children: [/* @__PURE__ */ E("thead", {
|
|
193
200
|
className: "bg-muted/50 border-b border-border",
|
|
194
|
-
children: /* @__PURE__ */
|
|
195
|
-
/* @__PURE__ */
|
|
201
|
+
children: /* @__PURE__ */ D("tr", { children: [
|
|
202
|
+
/* @__PURE__ */ E("th", {
|
|
196
203
|
className: "px-4 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider",
|
|
197
|
-
children:
|
|
204
|
+
children: j("channel.user", "User")
|
|
198
205
|
}),
|
|
199
|
-
/* @__PURE__ */
|
|
206
|
+
/* @__PURE__ */ E("th", {
|
|
200
207
|
className: "px-4 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider",
|
|
201
|
-
children:
|
|
208
|
+
children: j("channel.platformId", "Platform ID")
|
|
202
209
|
}),
|
|
203
|
-
/* @__PURE__ */
|
|
210
|
+
/* @__PURE__ */ E("th", {
|
|
204
211
|
className: "px-4 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider",
|
|
205
|
-
children:
|
|
212
|
+
children: j("channel.source", "Source")
|
|
206
213
|
}),
|
|
207
|
-
/* @__PURE__ */
|
|
214
|
+
/* @__PURE__ */ E("th", {
|
|
208
215
|
className: "px-4 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider",
|
|
209
|
-
children:
|
|
216
|
+
children: j("channel.status", "Status")
|
|
210
217
|
}),
|
|
211
|
-
/* @__PURE__ */
|
|
218
|
+
/* @__PURE__ */ E("th", {
|
|
212
219
|
className: "px-4 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider",
|
|
213
|
-
children:
|
|
220
|
+
children: j("channel.pairing", "Pairing")
|
|
214
221
|
}),
|
|
215
|
-
/* @__PURE__ */
|
|
222
|
+
/* @__PURE__ */ E("th", {
|
|
216
223
|
className: "px-4 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider",
|
|
217
|
-
children:
|
|
224
|
+
children: j("channel.notifications", "Notifications")
|
|
218
225
|
}),
|
|
219
|
-
/* @__PURE__ */
|
|
226
|
+
/* @__PURE__ */ E("th", {
|
|
220
227
|
className: "px-4 py-3 text-left text-xs font-medium text-muted-foreground uppercase tracking-wider",
|
|
221
|
-
children:
|
|
228
|
+
children: j("channel.dmAllowed", "DM Allowed")
|
|
222
229
|
})
|
|
223
230
|
] })
|
|
224
|
-
}), /* @__PURE__ */
|
|
231
|
+
}), /* @__PURE__ */ E("tbody", {
|
|
225
232
|
className: "divide-y divide-border",
|
|
226
|
-
children:
|
|
233
|
+
children: R.length === 0 ? /* @__PURE__ */ E("tr", { children: /* @__PURE__ */ E("td", {
|
|
227
234
|
colSpan: 7,
|
|
228
235
|
className: "px-4 py-8 text-center text-muted-foreground",
|
|
229
|
-
children:
|
|
230
|
-
}) }) :
|
|
231
|
-
let t =
|
|
232
|
-
return /* @__PURE__ */
|
|
236
|
+
children: j("channel.noUsersConnected", "No users connected to this channel")
|
|
237
|
+
}) }) : R.map((e) => {
|
|
238
|
+
let t = ee(e.presenceStatus), n = e.pairingStatus ? te(e.pairingStatus) : null, r = n?.icon ?? S;
|
|
239
|
+
return /* @__PURE__ */ D("tr", {
|
|
233
240
|
className: "hover:bg-muted/30 transition-colors",
|
|
234
241
|
children: [
|
|
235
|
-
/* @__PURE__ */
|
|
242
|
+
/* @__PURE__ */ E("td", {
|
|
236
243
|
className: "px-4 py-3",
|
|
237
|
-
children: /* @__PURE__ */
|
|
244
|
+
children: /* @__PURE__ */ D("div", {
|
|
238
245
|
className: "flex items-center gap-3",
|
|
239
|
-
children: [/* @__PURE__ */
|
|
246
|
+
children: [/* @__PURE__ */ E("div", {
|
|
240
247
|
className: "w-8 h-8 bg-accent-primary/10 rounded-full flex items-center justify-center",
|
|
241
|
-
children: /* @__PURE__ */
|
|
248
|
+
children: /* @__PURE__ */ E(b, {
|
|
242
249
|
size: 16,
|
|
243
250
|
className: "text-accent-primary"
|
|
244
251
|
})
|
|
245
|
-
}), /* @__PURE__ */
|
|
252
|
+
}), /* @__PURE__ */ D("div", { children: [/* @__PURE__ */ E("p", {
|
|
246
253
|
className: "text-sm font-medium text-foreground",
|
|
247
254
|
children: e.externalDisplayName || "Unknown"
|
|
248
|
-
}), e.externalUsername && /* @__PURE__ */
|
|
255
|
+
}), e.externalUsername && /* @__PURE__ */ E("p", {
|
|
249
256
|
className: "text-xs text-muted-foreground",
|
|
250
257
|
children: e.externalUsername
|
|
251
258
|
})] })]
|
|
252
259
|
})
|
|
253
260
|
}),
|
|
254
|
-
/* @__PURE__ */
|
|
261
|
+
/* @__PURE__ */ E("td", {
|
|
255
262
|
className: "px-4 py-3 text-sm font-mono text-muted-foreground",
|
|
256
263
|
children: e.externalUserId
|
|
257
264
|
}),
|
|
258
|
-
/* @__PURE__ */
|
|
265
|
+
/* @__PURE__ */ E("td", {
|
|
259
266
|
className: "px-4 py-3",
|
|
260
|
-
children: /* @__PURE__ */
|
|
267
|
+
children: /* @__PURE__ */ E("span", {
|
|
261
268
|
className: "text-xs text-muted-foreground bg-muted px-2 py-1 rounded",
|
|
262
269
|
children: e.source
|
|
263
270
|
})
|
|
264
271
|
}),
|
|
265
|
-
/* @__PURE__ */
|
|
272
|
+
/* @__PURE__ */ E("td", {
|
|
266
273
|
className: "px-4 py-3",
|
|
267
|
-
children: /* @__PURE__ */
|
|
274
|
+
children: /* @__PURE__ */ D("div", {
|
|
268
275
|
className: "flex items-center gap-2",
|
|
269
|
-
children: [/* @__PURE__ */
|
|
276
|
+
children: [/* @__PURE__ */ E("span", { className: `w-2 h-2 rounded-full ${t.color.replace("text-", "bg-")}` }), /* @__PURE__ */ E("span", {
|
|
270
277
|
className: `text-sm ${t.color}`,
|
|
271
278
|
children: t.label
|
|
272
279
|
})]
|
|
273
280
|
})
|
|
274
281
|
}),
|
|
275
|
-
/* @__PURE__ */
|
|
282
|
+
/* @__PURE__ */ E("td", {
|
|
276
283
|
className: "px-4 py-3",
|
|
277
|
-
children: e.pairingStatus && n ? /* @__PURE__ */
|
|
284
|
+
children: e.pairingStatus && n ? /* @__PURE__ */ D("span", {
|
|
278
285
|
className: `inline-flex items-center gap-1 text-xs px-2 py-1 rounded ${n.color}`,
|
|
279
|
-
children: [/* @__PURE__ */
|
|
280
|
-
}) : /* @__PURE__ */
|
|
286
|
+
children: [/* @__PURE__ */ E(r, { size: 12 }), n.label]
|
|
287
|
+
}) : /* @__PURE__ */ E("span", {
|
|
281
288
|
className: "text-xs text-muted-foreground",
|
|
282
289
|
children: "-"
|
|
283
290
|
})
|
|
284
291
|
}),
|
|
285
|
-
/* @__PURE__ */
|
|
292
|
+
/* @__PURE__ */ E("td", {
|
|
286
293
|
className: "px-4 py-3",
|
|
287
|
-
children: e.notificationsEnabled ? /* @__PURE__ */
|
|
294
|
+
children: e.notificationsEnabled ? /* @__PURE__ */ D("span", {
|
|
288
295
|
className: "inline-flex items-center gap-1",
|
|
289
|
-
children: [/* @__PURE__ */
|
|
296
|
+
children: [/* @__PURE__ */ E(d, {
|
|
290
297
|
size: 16,
|
|
291
|
-
className: "text-success-
|
|
298
|
+
className: "text-status-success-text",
|
|
292
299
|
"aria-hidden": "true"
|
|
293
|
-
}), /* @__PURE__ */
|
|
300
|
+
}), /* @__PURE__ */ E("span", {
|
|
294
301
|
className: "sr-only",
|
|
295
|
-
children:
|
|
302
|
+
children: j("channel.enabled", "Enabled")
|
|
296
303
|
})]
|
|
297
|
-
}) : /* @__PURE__ */
|
|
304
|
+
}) : /* @__PURE__ */ D("span", {
|
|
298
305
|
className: "inline-flex items-center gap-1",
|
|
299
|
-
children: [/* @__PURE__ */
|
|
306
|
+
children: [/* @__PURE__ */ E(f, {
|
|
300
307
|
size: 16,
|
|
301
308
|
className: "text-muted-foreground",
|
|
302
309
|
"aria-hidden": "true"
|
|
303
|
-
}), /* @__PURE__ */
|
|
310
|
+
}), /* @__PURE__ */ E("span", {
|
|
304
311
|
className: "sr-only",
|
|
305
|
-
children:
|
|
312
|
+
children: j("channel.disabled", "Disabled")
|
|
306
313
|
})]
|
|
307
314
|
})
|
|
308
315
|
}),
|
|
309
|
-
/* @__PURE__ */
|
|
316
|
+
/* @__PURE__ */ E("td", {
|
|
310
317
|
className: "px-4 py-3",
|
|
311
|
-
children: e.dmAllowed ? /* @__PURE__ */
|
|
312
|
-
className: "inline-flex items-center gap-1 text-sm text-success-
|
|
313
|
-
children: [/* @__PURE__ */
|
|
314
|
-
}) : /* @__PURE__ */
|
|
318
|
+
children: e.dmAllowed ? /* @__PURE__ */ D("span", {
|
|
319
|
+
className: "inline-flex items-center gap-1 text-sm text-status-success-text",
|
|
320
|
+
children: [/* @__PURE__ */ E(x, { size: 16 }), j("channel.allowed", "Allowed")]
|
|
321
|
+
}) : /* @__PURE__ */ D("span", {
|
|
315
322
|
className: "inline-flex items-center gap-1 text-sm text-muted-foreground",
|
|
316
|
-
children: [/* @__PURE__ */
|
|
323
|
+
children: [/* @__PURE__ */ E(S, { size: 16 }), j("channel.blocked", "Blocked")]
|
|
317
324
|
})
|
|
318
325
|
})
|
|
319
326
|
]
|
|
@@ -322,12 +329,61 @@ function D() {
|
|
|
322
329
|
})]
|
|
323
330
|
})
|
|
324
331
|
})
|
|
332
|
+
}),
|
|
333
|
+
/* @__PURE__ */ D("div", {
|
|
334
|
+
className: "flex items-center justify-between",
|
|
335
|
+
children: [/* @__PURE__ */ E("p", {
|
|
336
|
+
className: "text-sm text-muted-foreground",
|
|
337
|
+
children: H > 0 && /* @__PURE__ */ D(T, { children: [
|
|
338
|
+
j("channel.showing", "Showing"),
|
|
339
|
+
" ",
|
|
340
|
+
/* @__PURE__ */ D("span", {
|
|
341
|
+
className: "font-medium",
|
|
342
|
+
children: [
|
|
343
|
+
W * B + 1,
|
|
344
|
+
"–",
|
|
345
|
+
Math.min((W + 1) * B, H)
|
|
346
|
+
]
|
|
347
|
+
}),
|
|
348
|
+
" ",
|
|
349
|
+
j("channel.of", "of"),
|
|
350
|
+
" ",
|
|
351
|
+
/* @__PURE__ */ E("span", {
|
|
352
|
+
className: "font-medium",
|
|
353
|
+
children: H
|
|
354
|
+
})
|
|
355
|
+
] })
|
|
356
|
+
}), /* @__PURE__ */ D("div", {
|
|
357
|
+
className: "flex items-center gap-2",
|
|
358
|
+
children: [
|
|
359
|
+
/* @__PURE__ */ D("button", {
|
|
360
|
+
onClick: () => G((e) => Math.max(0, e - 1)),
|
|
361
|
+
disabled: !Q || I,
|
|
362
|
+
className: "flex items-center gap-1 px-3 py-1.5 text-sm border border-border rounded-lg hover:bg-muted transition-colors disabled:opacity-40 disabled:cursor-not-allowed",
|
|
363
|
+
children: [/* @__PURE__ */ E(m, { size: 16 }), j("channel.previous", "Previous")]
|
|
364
|
+
}),
|
|
365
|
+
/* @__PURE__ */ D("span", {
|
|
366
|
+
className: "text-sm text-muted-foreground",
|
|
367
|
+
children: [
|
|
368
|
+
W + 1,
|
|
369
|
+
" / ",
|
|
370
|
+
Z
|
|
371
|
+
]
|
|
372
|
+
}),
|
|
373
|
+
/* @__PURE__ */ D("button", {
|
|
374
|
+
onClick: () => G((e) => Math.min(Z - 1, e + 1)),
|
|
375
|
+
disabled: !$ || I,
|
|
376
|
+
className: "flex items-center gap-1 px-3 py-1.5 text-sm border border-border rounded-lg hover:bg-muted transition-colors disabled:opacity-40 disabled:cursor-not-allowed",
|
|
377
|
+
children: [j("channel.next", "Next"), /* @__PURE__ */ E(h, { size: 16 })]
|
|
378
|
+
})
|
|
379
|
+
]
|
|
380
|
+
})]
|
|
325
381
|
})
|
|
326
382
|
]
|
|
327
383
|
})
|
|
328
384
|
});
|
|
329
385
|
}
|
|
330
386
|
//#endregion
|
|
331
|
-
export {
|
|
387
|
+
export { A as ChannelUsersPage };
|
|
332
388
|
|
|
333
389
|
//# sourceMappingURL=ChannelUsersPage.js.map
|