@epam/ai-dial-chat-hooks 1.1.0-dev.392 → 1.1.0-dev.395
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/catalog.d.ts +180 -0
- package/catalog.js +3 -3
- package/index.d.ts +177 -0
- package/index.js +20 -20
- package/oauth.js +3 -3
- package/package.json +14 -14
- package/useOAuthCallbackCompletion-CvyTKLER.js +93 -0
- package/{useSkillFilePreview-BYfZUJhr.js → useSkillFilePreview-Dkx9F4D-.js} +530 -291
- package/useToolsetLogin-B05m134e.js +195 -0
- package/toolset-id-CkxRHyU0.js +0 -10
- package/useToolsetLogin-GhFtKs4D.js +0 -276
|
@@ -1,20 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { r } from "./
|
|
3
|
-
import { n as i
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
1
|
+
import { t as e } from "./api-error-DuLNy43N.js";
|
|
2
|
+
import { i as t, n, r } from "./string-utils-iBi2Y55C.js";
|
|
3
|
+
import { n as i } from "./deployment-id-CxWgJTs9.js";
|
|
4
|
+
import { T as a, g as o, h as s, n as c, t as l } from "./useToolsetLogin-B05m134e.js";
|
|
5
|
+
import { n as u, s as d, t as f } from "./prompt-resource-Bt1I-8ri.js";
|
|
6
|
+
import { t as p } from "./formatting-CZyyxBG3.js";
|
|
7
|
+
import { r as m, t as h } from "./skill-manifest-CCX8s4nn.js";
|
|
8
|
+
import { CatalogEntityType as g, extractPromptParams as _, formatCost as v, formatLastUsed as y, formatUnitPrice as b } from "@epam/ai-dial-chat-shared";
|
|
9
|
+
import { useCallback as x, useEffect as S, useMemo as C, useRef as w, useState as T } from "react";
|
|
10
|
+
import { mimeTypesToExtensionLabels as ee } from "@epam/ai-dial-attachment-input";
|
|
11
|
+
import { CatalogContentNodeType as E, CatalogLimitStatus as D, CodeLanguage as O, CredentialStatus as k, CredentialsLevel as A, ToolsetAuthenticationType as j } from "@epam/ai-dial-catalog";
|
|
12
|
+
import { ListFilesItemDtoNodeTypeEnum as te, SkillMetadataItemDtoNodeTypeEnum as M } from "@epam/ai-dial-chat-api-client";
|
|
13
|
+
import { NotificationVariant as N } from "@epam/ai-dial-ui-kit";
|
|
14
|
+
import { fromFolderPathKey as ne, mergeFolderPaths as re, toFolderPathKey as ie } from "@epam/ai-dial-publish-panel";
|
|
12
15
|
//#region src/catalog/create-publish-api.ts
|
|
13
|
-
var
|
|
16
|
+
var ae = (e) => ({
|
|
14
17
|
source: e.source,
|
|
15
18
|
targets: e.targets,
|
|
16
19
|
function: e.function
|
|
17
|
-
}),
|
|
20
|
+
}), oe = (e) => ({
|
|
18
21
|
publishCatalogEntity: (t, n, r) => e.publishCatalogEntity({
|
|
19
22
|
entityType: t,
|
|
20
23
|
entityId: n,
|
|
@@ -33,37 +36,37 @@ var re = (e) => ({
|
|
|
33
36
|
...t,
|
|
34
37
|
function: e
|
|
35
38
|
}))
|
|
36
|
-
}),
|
|
39
|
+
}), se = (e) => e.endsWith("/") ? e.slice(0, -1) : e, ce = (e) => e.split("/").map((e) => encodeURIComponent(r(e))).join("/"), le = (e) => e.split("/").map(r).join("/"), ue = (e, t) => `${se(e)}/openai/deployments/${ce(t)}/chat/completions`, de = (e) => `${se(e)}/openai/v1/responses`, fe = (e, t, { hasChatCompletion: n, hasResponsesApi: r }) => {
|
|
37
40
|
let i = [];
|
|
38
41
|
if (n) {
|
|
39
|
-
let n =
|
|
42
|
+
let n = ue(e, t);
|
|
40
43
|
i.push({
|
|
41
44
|
label: "Chat Completions",
|
|
42
45
|
url: n,
|
|
43
46
|
snippets: [{
|
|
44
|
-
language:
|
|
47
|
+
language: O.Curl,
|
|
45
48
|
code: `curl -X POST '${n}?api-version=<api-version>' \\\n -H 'Content-Type: application/json' \\\n -H 'Api-Key: <key>' \\\n -d '{"messages":[{"role":"user","content":"Hello"}]}'`
|
|
46
49
|
}]
|
|
47
50
|
});
|
|
48
51
|
}
|
|
49
52
|
if (r) {
|
|
50
|
-
let n =
|
|
53
|
+
let n = de(e);
|
|
51
54
|
i.push({
|
|
52
55
|
label: "Responses",
|
|
53
56
|
url: n,
|
|
54
57
|
snippets: [{
|
|
55
|
-
language:
|
|
58
|
+
language: O.Curl,
|
|
56
59
|
code: `curl -X POST '${n}' \\\n -H 'Content-Type: application/json' \\\n -H 'Api-Key: <key>' \\\n -d '{"model":"${t}","input":"Hello"}'`
|
|
57
60
|
}]
|
|
58
61
|
});
|
|
59
62
|
}
|
|
60
63
|
if (i.length !== 0) return {
|
|
61
|
-
resource: { modelId:
|
|
64
|
+
resource: { modelId: le(t) },
|
|
62
65
|
endpoints: i
|
|
63
66
|
};
|
|
64
|
-
},
|
|
67
|
+
}, P = /* @__PURE__ */ function(e) {
|
|
65
68
|
return e.None = "NONE", e.ApiKey = "API_KEY", e.OAuth = "OAUTH", e;
|
|
66
|
-
}({}),
|
|
69
|
+
}({}), pe = [
|
|
67
70
|
{
|
|
68
71
|
key: "dayTokenStats",
|
|
69
72
|
labelField: "tokensPerDay",
|
|
@@ -79,16 +82,16 @@ var re = (e) => ({
|
|
|
79
82
|
labelField: "tokensPerMonth",
|
|
80
83
|
costKey: "monthCostStats"
|
|
81
84
|
}
|
|
82
|
-
],
|
|
85
|
+
], me = 2 ** 53 - 1, he = .75, ge = [1e6, 1e3], F = new Intl.NumberFormat(void 0, {
|
|
83
86
|
notation: "compact",
|
|
84
87
|
maximumFractionDigits: 1
|
|
85
|
-
}),
|
|
86
|
-
let t =
|
|
88
|
+
}), I = new Intl.NumberFormat(void 0, { maximumFractionDigits: 2 }), _e = (e) => {
|
|
89
|
+
let t = ge.find((t) => Math.abs(e) >= t);
|
|
87
90
|
return t == null ? e : Math.trunc(e / t * 10) / 10 * t;
|
|
88
|
-
},
|
|
89
|
-
if (
|
|
90
|
-
},
|
|
91
|
-
let i = Math.max(0, e.used), a = e.total, o =
|
|
91
|
+
}, ve = (e) => e != null && Number.isFinite(e.total) && Number.isFinite(e.used) && e.total > 0, L = (e) => e >= me, ye = (e) => e != null && Number.isFinite(e.total) && Number.isFinite(e.used), be = (e, t) => {
|
|
92
|
+
if (ye(e)) return t.formatSpentCaption(v(Math.max(0, e.used)));
|
|
93
|
+
}, xe = (e, t, n, r) => {
|
|
94
|
+
let i = Math.max(0, e.used), a = e.total, o = F.format(_e(i)), s = F.format(a), c = I.format(i), l = I.format(a), u = L(a);
|
|
92
95
|
return {
|
|
93
96
|
label: t,
|
|
94
97
|
used: i,
|
|
@@ -111,26 +114,26 @@ var re = (e) => ({
|
|
|
111
114
|
total: l
|
|
112
115
|
})
|
|
113
116
|
};
|
|
114
|
-
},
|
|
115
|
-
let n =
|
|
116
|
-
return n >= 1 ?
|
|
117
|
-
}, void 0),
|
|
117
|
+
}, Se = (e) => L(e.total) ? 0 : Math.max(e.used, 0) / e.total, Ce = (e) => e.reduce((e, t) => {
|
|
118
|
+
let n = Se(t);
|
|
119
|
+
return n >= 1 ? D.LimitReached : n >= he && e !== D.LimitReached ? D.RunningLow : e;
|
|
120
|
+
}, void 0), R = (e, t) => {
|
|
118
121
|
if (e == null) return;
|
|
119
|
-
let n = [], r =
|
|
122
|
+
let n = [], r = pe.flatMap((r) => {
|
|
120
123
|
let i = e[r.key];
|
|
121
|
-
if (!
|
|
124
|
+
if (!ve(i)) return [];
|
|
122
125
|
n.push(i);
|
|
123
|
-
let a =
|
|
124
|
-
return [
|
|
126
|
+
let a = be(e[r.costKey], t);
|
|
127
|
+
return [xe(i, t[r.labelField], a, t)];
|
|
125
128
|
});
|
|
126
129
|
return r.length > 0 ? {
|
|
127
130
|
groups: [{
|
|
128
131
|
label: t.tokenGroup,
|
|
129
132
|
rows: r
|
|
130
133
|
}],
|
|
131
|
-
status:
|
|
134
|
+
status: Ce(n)
|
|
132
135
|
} : void 0;
|
|
133
|
-
},
|
|
136
|
+
}, we = (e) => {
|
|
134
137
|
let t = e?.monthTokenStats;
|
|
135
138
|
if (t == null || !Number.isFinite(t.total) || !Number.isFinite(t.used) || t.total <= 0 || t.total >= 2 ** 53 - 1) return;
|
|
136
139
|
let n = Math.max(0, t.used);
|
|
@@ -140,12 +143,12 @@ var re = (e) => ({
|
|
|
140
143
|
remaining: Math.max(0, t.total - n),
|
|
141
144
|
usedPercent: Math.min(100, Math.round(n / t.total * 100))
|
|
142
145
|
};
|
|
143
|
-
},
|
|
146
|
+
}, z = (e) => e >= 1e6 ? `${e / 1e6}M tokens` : e >= 1e3 ? `${e / 1e3}K tokens` : `${e} tokens`, B = (e) => {
|
|
144
147
|
let t = /^(\d{4})-(\d{2})-(\d{2})$/.exec(e);
|
|
145
148
|
if (t == null) return e;
|
|
146
|
-
let [, n, r, i] = t, a = Number(n), o = Number(r) - 1,
|
|
147
|
-
return
|
|
148
|
-
},
|
|
149
|
+
let [, n, r, i] = t, a = Number(n), o = Number(r) - 1, s = Number(i), c = new Date(a, o, s);
|
|
150
|
+
return c.getFullYear() !== a || c.getMonth() !== o || c.getDate() !== s ? e : p(c.getTime());
|
|
151
|
+
}, Te = "unit", Ee = (e) => {
|
|
149
152
|
let t = [];
|
|
150
153
|
if (e.capabilities != null) {
|
|
151
154
|
let { capabilities: n } = e, r = [];
|
|
@@ -176,7 +179,7 @@ var re = (e) => ({
|
|
|
176
179
|
value: n.license
|
|
177
180
|
}), n.knowledgeCutoffDate != null && r.push({
|
|
178
181
|
label: "Knowledge cutoff date",
|
|
179
|
-
value:
|
|
182
|
+
value: B(n.knowledgeCutoffDate)
|
|
180
183
|
}), n.parameters != null && r.push({
|
|
181
184
|
label: "Parameters",
|
|
182
185
|
value: n.parameters
|
|
@@ -185,60 +188,60 @@ var re = (e) => ({
|
|
|
185
188
|
value: n.hostedBy
|
|
186
189
|
}), n.createdAt != null && r.push({
|
|
187
190
|
label: "Release date",
|
|
188
|
-
value:
|
|
191
|
+
value: p(n.createdAt)
|
|
189
192
|
}), n.contextWindowTokens != null && r.push({
|
|
190
193
|
label: "Context window",
|
|
191
|
-
value:
|
|
194
|
+
value: z(n.contextWindowTokens)
|
|
192
195
|
}), n.maxOutputTokens != null && r.push({
|
|
193
196
|
label: "Max output tokens",
|
|
194
|
-
value:
|
|
197
|
+
value: z(n.maxOutputTokens)
|
|
195
198
|
}), n.inputTypes?.length && r.push({
|
|
196
199
|
label: "Input modalities",
|
|
197
|
-
value:
|
|
200
|
+
value: ee(n.inputTypes)
|
|
198
201
|
}), r.length > 0 && t.push({
|
|
199
202
|
title: "Specification",
|
|
200
203
|
specs: r
|
|
201
204
|
});
|
|
202
205
|
}
|
|
203
|
-
let n =
|
|
206
|
+
let n = ke(e.pricing), r = Ae(e);
|
|
204
207
|
return {
|
|
205
208
|
overview: t.length > 0 ? { sections: t } : void 0,
|
|
206
209
|
pricing: n,
|
|
207
210
|
api: r
|
|
208
211
|
};
|
|
209
|
-
},
|
|
212
|
+
}, De = {
|
|
210
213
|
prompt: "Input tokens",
|
|
211
214
|
completion: "Output tokens",
|
|
212
215
|
cache_read: "Cached input",
|
|
213
216
|
cacheRead: "Cached input",
|
|
214
217
|
cache_write: "Cached write",
|
|
215
218
|
cacheWrite: "Cached write"
|
|
216
|
-
},
|
|
219
|
+
}, V = [
|
|
217
220
|
"prompt",
|
|
218
221
|
"completion",
|
|
219
222
|
"cache_read",
|
|
220
223
|
"cacheRead",
|
|
221
224
|
"cache_write",
|
|
222
225
|
"cacheWrite"
|
|
223
|
-
],
|
|
224
|
-
let t =
|
|
225
|
-
return t === -1 ?
|
|
226
|
-
},
|
|
227
|
-
let t =
|
|
226
|
+
], H = (e) => {
|
|
227
|
+
let t = V.indexOf(e);
|
|
228
|
+
return t === -1 ? V.length : t;
|
|
229
|
+
}, Oe = (e) => {
|
|
230
|
+
let t = De[e];
|
|
228
231
|
if (t != null) return t;
|
|
229
232
|
let n = e.replace(/([a-z\d])([A-Z])/g, "$1 $2").replace(/[_-]+/g, " ").trim().toLowerCase();
|
|
230
233
|
return n === "" ? e : ` ${n.charAt(0).toUpperCase()}${n.slice(1)}`;
|
|
231
|
-
},
|
|
234
|
+
}, ke = (e) => {
|
|
232
235
|
if (e == null) return;
|
|
233
|
-
let t = [...e.prices ?? []].sort((e, t) =>
|
|
234
|
-
label:
|
|
236
|
+
let t = [...e.prices ?? []].sort((e, t) => H(e.key) - H(t.key)).map(({ key: e, price: t }) => ({
|
|
237
|
+
label: Oe(e),
|
|
235
238
|
price: t
|
|
236
239
|
}));
|
|
237
240
|
if (t.length !== 0) return { prices: t };
|
|
238
|
-
},
|
|
241
|
+
}, Ae = (e) => {
|
|
239
242
|
let { api: t } = e;
|
|
240
243
|
if (t?.modelId != null) return { resource: { modelId: t.modelId } };
|
|
241
|
-
},
|
|
244
|
+
}, je = (e) => {
|
|
242
245
|
let t = [];
|
|
243
246
|
if (e.specification != null) {
|
|
244
247
|
let { specification: n } = e, r = [];
|
|
@@ -253,7 +256,7 @@ var re = (e) => ({
|
|
|
253
256
|
value: n.license
|
|
254
257
|
}), n.knowledgeCutoffDate != null && r.push({
|
|
255
258
|
label: "Knowledge cutoff date",
|
|
256
|
-
value:
|
|
259
|
+
value: B(n.knowledgeCutoffDate)
|
|
257
260
|
}), n.parameters != null && r.push({
|
|
258
261
|
label: "Parameters",
|
|
259
262
|
value: n.parameters
|
|
@@ -262,7 +265,7 @@ var re = (e) => ({
|
|
|
262
265
|
value: n.hostedBy
|
|
263
266
|
}), n.createdAt != null && r.push({
|
|
264
267
|
label: "Release date",
|
|
265
|
-
value:
|
|
268
|
+
value: p(n.createdAt)
|
|
266
269
|
}), n.routes?.length && r.push({
|
|
267
270
|
label: "Routes",
|
|
268
271
|
value: n.routes.join(" · ")
|
|
@@ -291,37 +294,37 @@ var re = (e) => ({
|
|
|
291
294
|
let { configuration: n } = e, r = [];
|
|
292
295
|
n.inputAttachmentTypes?.length && r.push({
|
|
293
296
|
label: "Input attachments",
|
|
294
|
-
value:
|
|
297
|
+
value: ee(n.inputAttachmentTypes)
|
|
295
298
|
}), r.length > 0 && t.push({
|
|
296
299
|
title: "Configuration",
|
|
297
300
|
specs: r
|
|
298
301
|
});
|
|
299
302
|
}
|
|
300
303
|
return { overview: t.length > 0 ? { sections: t } : void 0 };
|
|
301
|
-
},
|
|
302
|
-
[
|
|
303
|
-
[
|
|
304
|
-
[
|
|
305
|
-
},
|
|
306
|
-
SIGNED_IN:
|
|
307
|
-
SIGNED_OUT:
|
|
308
|
-
FAILED:
|
|
309
|
-
},
|
|
310
|
-
let
|
|
311
|
-
if (
|
|
312
|
-
let { userLevel:
|
|
304
|
+
}, Me = {
|
|
305
|
+
[P.None]: j.None,
|
|
306
|
+
[P.ApiKey]: j.ApiKey,
|
|
307
|
+
[P.OAuth]: j.OAuth
|
|
308
|
+
}, Ne = {
|
|
309
|
+
SIGNED_IN: k.SignedIn,
|
|
310
|
+
SIGNED_OUT: k.SignedOut,
|
|
311
|
+
FAILED: k.Failed
|
|
312
|
+
}, Pe = (e, t, n) => {
|
|
313
|
+
let r = Me[t.specification?.authentication ?? P.None];
|
|
314
|
+
if (r == null) return;
|
|
315
|
+
let { userLevel: i, global: o } = t.specification?.authStatus ?? {}, s = a(e);
|
|
313
316
|
return {
|
|
314
|
-
authenticationType:
|
|
315
|
-
userStatus:
|
|
316
|
-
globalStatus: o ?
|
|
317
|
+
authenticationType: r,
|
|
318
|
+
userStatus: i ? Ne[i] : void 0,
|
|
319
|
+
globalStatus: o ? Ne[o] : void 0,
|
|
317
320
|
isPublic: s,
|
|
318
321
|
isManageableByAdmin: n && s,
|
|
319
322
|
apiKeyHeader: t.specification?.authStatus?.apiKeyHeader
|
|
320
323
|
};
|
|
321
|
-
},
|
|
324
|
+
}, Fe = (e) => {
|
|
322
325
|
let t = e?.permissions?.length ? e.permissions : e?.allTools;
|
|
323
326
|
if (t?.length) return { tools: t.map((e) => ({ name: e })) };
|
|
324
|
-
},
|
|
327
|
+
}, Ie = (e) => {
|
|
325
328
|
let t = [];
|
|
326
329
|
if (e.specification != null) {
|
|
327
330
|
let { specification: n } = e, r = [];
|
|
@@ -339,7 +342,7 @@ var re = (e) => ({
|
|
|
339
342
|
value: n.license
|
|
340
343
|
}), n.knowledgeCutoffDate != null && r.push({
|
|
341
344
|
label: "Knowledge cutoff date",
|
|
342
|
-
value:
|
|
345
|
+
value: B(n.knowledgeCutoffDate)
|
|
343
346
|
}), n.parameters != null && r.push({
|
|
344
347
|
label: "Parameters",
|
|
345
348
|
value: n.parameters
|
|
@@ -348,7 +351,7 @@ var re = (e) => ({
|
|
|
348
351
|
value: n.hostedBy
|
|
349
352
|
}), n.createdAt != null && r.push({
|
|
350
353
|
label: "Release date",
|
|
351
|
-
value:
|
|
354
|
+
value: p(n.createdAt)
|
|
352
355
|
}), n.authStatus?.scopesSupported?.length && r.push({
|
|
353
356
|
label: "OAuth scopes",
|
|
354
357
|
value: n.authStatus.scopesSupported.join(" · ")
|
|
@@ -365,15 +368,15 @@ var re = (e) => ({
|
|
|
365
368
|
}
|
|
366
369
|
return {
|
|
367
370
|
overview: t.length > 0 ? { sections: t } : void 0,
|
|
368
|
-
tools:
|
|
371
|
+
tools: Fe(e.specification)
|
|
369
372
|
};
|
|
370
|
-
},
|
|
373
|
+
}, U = (e) => {
|
|
371
374
|
switch (e.type) {
|
|
372
|
-
case "MODEL": return
|
|
373
|
-
case "AGENT": return
|
|
374
|
-
case "TOOLSET": return
|
|
375
|
+
case "MODEL": return Ee(e.data);
|
|
376
|
+
case "AGENT": return je(e.data);
|
|
377
|
+
case "TOOLSET": return Ie(e.data);
|
|
375
378
|
}
|
|
376
|
-
},
|
|
379
|
+
}, W = (e) => {
|
|
377
380
|
if (e != null) return {
|
|
378
381
|
hasTools: e.tools,
|
|
379
382
|
hasMcp: e.mcp,
|
|
@@ -389,23 +392,23 @@ var re = (e) => ({
|
|
|
389
392
|
hasResponsesApi: e.responsesApi,
|
|
390
393
|
reasoningEfforts: e.reasoningEfforts
|
|
391
394
|
};
|
|
392
|
-
},
|
|
395
|
+
}, Le = (e) => {
|
|
393
396
|
if (e == null) return;
|
|
394
397
|
let { unit: t } = e, n = Object.entries(e).flatMap(([e, n]) => {
|
|
395
|
-
if (e ===
|
|
396
|
-
let r =
|
|
398
|
+
if (e === Te || typeof n != "string" || n.trim() === "") return [];
|
|
399
|
+
let r = b(n, t);
|
|
397
400
|
return r == null ? [] : [{
|
|
398
401
|
key: e,
|
|
399
402
|
price: r
|
|
400
403
|
}];
|
|
401
404
|
});
|
|
402
405
|
return n.length > 0 ? { prices: n } : void 0;
|
|
403
|
-
},
|
|
406
|
+
}, Re = (e) => {
|
|
404
407
|
let { limits: t, pricing: n, features: r, catalogProperties: i, owner: a, inputAttachmentTypes: o, defaultMaxTokens: s, createdAt: c } = e.modelDetails ?? {}, l = t != null || i != null || a != null || c != null || (o?.length ?? 0) > 0;
|
|
405
408
|
return {
|
|
406
409
|
type: "MODEL",
|
|
407
410
|
data: {
|
|
408
|
-
capabilities:
|
|
411
|
+
capabilities: W(r),
|
|
409
412
|
specification: l ? {
|
|
410
413
|
provider: i?.provider,
|
|
411
414
|
vendor: i?.vendor,
|
|
@@ -418,16 +421,16 @@ var re = (e) => ({
|
|
|
418
421
|
hostedBy: a,
|
|
419
422
|
createdAt: c
|
|
420
423
|
} : void 0,
|
|
421
|
-
pricing:
|
|
424
|
+
pricing: Le(n),
|
|
422
425
|
api: { modelId: e.id }
|
|
423
426
|
}
|
|
424
427
|
};
|
|
425
|
-
},
|
|
428
|
+
}, ze = (e) => {
|
|
426
429
|
let { routes: t, owner: n, inputAttachmentTypes: r, features: i, catalogProperties: a, createdAt: o } = e.applicationDetails ?? {}, s = a != null || n != null || o != null || (t?.length ?? 0) > 0;
|
|
427
430
|
return {
|
|
428
431
|
type: "AGENT",
|
|
429
432
|
data: {
|
|
430
|
-
capabilities:
|
|
433
|
+
capabilities: W(i),
|
|
431
434
|
specification: s ? {
|
|
432
435
|
provider: a?.provider,
|
|
433
436
|
vendor: a?.vendor,
|
|
@@ -441,7 +444,7 @@ var re = (e) => ({
|
|
|
441
444
|
configuration: r?.length ? { inputAttachmentTypes: r } : void 0
|
|
442
445
|
}
|
|
443
446
|
};
|
|
444
|
-
},
|
|
447
|
+
}, Be = (e) => e === P.None || e === P.ApiKey || e === P.OAuth, Ve = (e) => {
|
|
445
448
|
if (e == null) return;
|
|
446
449
|
let { globalAuthStatus: t, appLevelAuthStatus: n, userLevelAuthStatus: r, scopesSupported: i, authorizationEndpoint: a, tokenEndpoint: o, apiKeyHeader: s } = e;
|
|
447
450
|
if (!(t == null && n == null && r == null && a == null && o == null && s == null && !i?.length)) return {
|
|
@@ -453,14 +456,14 @@ var re = (e) => ({
|
|
|
453
456
|
tokenEndpoint: o,
|
|
454
457
|
apiKeyHeader: s
|
|
455
458
|
};
|
|
456
|
-
},
|
|
459
|
+
}, He = (e) => {
|
|
457
460
|
let t = e.toolsetDetails, n = t?.authSettings?.authenticationType;
|
|
458
461
|
return {
|
|
459
462
|
type: "TOOLSET",
|
|
460
463
|
data: {
|
|
461
|
-
capabilities:
|
|
464
|
+
capabilities: W(t?.features),
|
|
462
465
|
specification: t == null ? void 0 : {
|
|
463
|
-
authentication:
|
|
466
|
+
authentication: Be(n) ? n : void 0,
|
|
464
467
|
provider: t.catalogProperties?.provider,
|
|
465
468
|
vendor: t.catalogProperties?.vendor,
|
|
466
469
|
license: t.catalogProperties?.license,
|
|
@@ -470,59 +473,59 @@ var re = (e) => ({
|
|
|
470
473
|
allTools: t.allToolNames,
|
|
471
474
|
hostedBy: t.owner,
|
|
472
475
|
createdAt: t.createdAt,
|
|
473
|
-
authStatus:
|
|
476
|
+
authStatus: Ve(t.authSettings)
|
|
474
477
|
}
|
|
475
478
|
}
|
|
476
479
|
};
|
|
477
|
-
},
|
|
480
|
+
}, Ue = (e) => {
|
|
478
481
|
switch (e.type) {
|
|
479
|
-
case "model": return
|
|
480
|
-
case "application": return
|
|
481
|
-
case "toolset": return
|
|
482
|
+
case "model": return Re(e);
|
|
483
|
+
case "application": return ze(e);
|
|
484
|
+
case "toolset": return He(e);
|
|
482
485
|
}
|
|
483
|
-
},
|
|
484
|
-
NONE:
|
|
485
|
-
API_KEY:
|
|
486
|
-
OAUTH:
|
|
487
|
-
},
|
|
488
|
-
SIGNED_IN:
|
|
489
|
-
SIGNED_OUT:
|
|
490
|
-
FAILED:
|
|
491
|
-
},
|
|
486
|
+
}, We = {
|
|
487
|
+
NONE: j.None,
|
|
488
|
+
API_KEY: j.ApiKey,
|
|
489
|
+
OAUTH: j.OAuth
|
|
490
|
+
}, Ge = {
|
|
491
|
+
SIGNED_IN: k.SignedIn,
|
|
492
|
+
SIGNED_OUT: k.SignedOut,
|
|
493
|
+
FAILED: k.Failed
|
|
494
|
+
}, Ke = (e, t, n) => {
|
|
492
495
|
if (t == null) return;
|
|
493
|
-
let
|
|
496
|
+
let r = a(e), i = t.userLevelAuthStatus ? Ge[t.userLevelAuthStatus] : void 0, o = t.globalAuthStatus ? Ge[t.globalAuthStatus] : void 0;
|
|
494
497
|
return {
|
|
495
|
-
authenticationType: !n &&
|
|
496
|
-
userStatus:
|
|
498
|
+
authenticationType: !n && r && i !== k.SignedIn && o === k.SignedIn ? j.None : We[t.authenticationType],
|
|
499
|
+
userStatus: i,
|
|
497
500
|
globalStatus: o,
|
|
498
|
-
isPublic:
|
|
499
|
-
isManageableByAdmin: n &&
|
|
501
|
+
isPublic: r,
|
|
502
|
+
isManageableByAdmin: n && r,
|
|
500
503
|
apiKeyHeader: t.apiKeyHeader
|
|
501
504
|
};
|
|
502
|
-
},
|
|
503
|
-
model:
|
|
504
|
-
toolset:
|
|
505
|
-
application:
|
|
506
|
-
},
|
|
505
|
+
}, qe = {
|
|
506
|
+
model: g.Model,
|
|
507
|
+
toolset: g.Toolset,
|
|
508
|
+
application: g.Agent
|
|
509
|
+
}, Je = "applications/", G = "toolsets/", Ye = "public", Xe = (e, t) => (e.startsWith(t) ? e.slice(t.length) : e).split("/").filter(Boolean).map(r), Ze = (e, t) => {
|
|
507
510
|
if (e.isMy) return [t.personal];
|
|
508
|
-
let n =
|
|
509
|
-
return e.sharedWithMe ? [t.shared, ...n.slice(1)] : n[0]?.toLowerCase() ===
|
|
510
|
-
},
|
|
511
|
+
let n = Xe(e.applicationFolder ?? "", Je);
|
|
512
|
+
return e.sharedWithMe ? [t.shared, ...n.slice(1)] : n[0]?.toLowerCase() === Ye ? [t.public, ...n.slice(1)] : n;
|
|
513
|
+
}, Qe = (e, t) => {
|
|
511
514
|
if (e.isMy && t != null) return [t.personal];
|
|
512
515
|
let n = e.toolset || e.id;
|
|
513
516
|
if (!n.startsWith(G)) return [];
|
|
514
|
-
let r =
|
|
515
|
-
return e.sharedWithMe && t != null ? [t.shared, ...r.slice(1)] : r[0]?.toLowerCase() ===
|
|
516
|
-
},
|
|
517
|
-
let
|
|
517
|
+
let r = Xe(n, G).slice(0, -1);
|
|
518
|
+
return e.sharedWithMe && t != null ? [t.shared, ...r.slice(1)] : r[0]?.toLowerCase() === Ye && t != null ? [t.public, ...r.slice(1)] : r.slice(1);
|
|
519
|
+
}, $e = (e, { favoriteIds: t = /* @__PURE__ */ new Set(), entityDetails: n, folderLabels: r, editableSchemaIds: i = [], isCustomAppsEditable: a = !1, activeLocale: o, primaryLocale: s, resolveIconUrl: c }) => {
|
|
520
|
+
let l = d(e.displayName, o, s) || e.id, u = (e.type ?? "").toLowerCase();
|
|
518
521
|
return {
|
|
519
522
|
id: e.id,
|
|
520
|
-
type:
|
|
521
|
-
name:
|
|
522
|
-
description:
|
|
523
|
-
iconUrl:
|
|
523
|
+
type: qe[u] ?? g.Model,
|
|
524
|
+
name: l,
|
|
525
|
+
description: d(e.description, o, s),
|
|
526
|
+
iconUrl: c(e.iconUrl),
|
|
524
527
|
version: e.displayVersion ?? "",
|
|
525
|
-
lastUsed:
|
|
528
|
+
lastUsed: y(e.updatedAt),
|
|
526
529
|
updatedAt: e.updatedAt,
|
|
527
530
|
createdAt: e.createdAt,
|
|
528
531
|
isFeatured: e.isFeatured ?? !1,
|
|
@@ -532,22 +535,22 @@ var re = (e) => ({
|
|
|
532
535
|
isStarred: t.has(e.id),
|
|
533
536
|
isMyApp: e.isMy ?? !1,
|
|
534
537
|
sharedWithMe: e.sharedWithMe ?? !1,
|
|
535
|
-
isEditable: (!!e.isMy || !!e.canEdit) && (i.length > 0 && i.includes(e.applicationTypeSchemaId ?? "") ||
|
|
536
|
-
folder:
|
|
537
|
-
details: n == null ? void 0 :
|
|
538
|
+
isEditable: (!!e.isMy || !!e.canEdit) && (i.length > 0 && i.includes(e.applicationTypeSchemaId ?? "") || a && !e.applicationTypeSchemaId && u === "application"),
|
|
539
|
+
folder: Ze(e, r),
|
|
540
|
+
details: n == null ? void 0 : U(n),
|
|
538
541
|
supportsMcp: e.features?.mcp === !0,
|
|
539
542
|
supportsChat: e.interfaces == null || e.interfaces.includes("chat")
|
|
540
543
|
};
|
|
541
|
-
},
|
|
542
|
-
let
|
|
544
|
+
}, et = (e, { favoriteIds: t = /* @__PURE__ */ new Set(), isAdmin: n = !1, folderLabels: r, activeLocale: i, primaryLocale: a, resolveIconUrl: o }) => {
|
|
545
|
+
let s = d(e.displayName, i, a) || e.toolset || e.reference || e.id, c = e.allowedTools ?? [];
|
|
543
546
|
return {
|
|
544
547
|
id: e.id,
|
|
545
|
-
type:
|
|
546
|
-
name:
|
|
547
|
-
description:
|
|
548
|
-
iconUrl:
|
|
548
|
+
type: g.Toolset,
|
|
549
|
+
name: s,
|
|
550
|
+
description: d(e.description, i, a),
|
|
551
|
+
iconUrl: o(e.iconUrl),
|
|
549
552
|
version: e.displayVersion ?? "",
|
|
550
|
-
lastUsed:
|
|
553
|
+
lastUsed: y(e.updatedAt),
|
|
551
554
|
updatedAt: e.updatedAt,
|
|
552
555
|
createdAt: e.createdAt,
|
|
553
556
|
isFeatured: !1,
|
|
@@ -558,55 +561,55 @@ var re = (e) => ({
|
|
|
558
561
|
isMyApp: e.isMy ?? !1,
|
|
559
562
|
sharedWithMe: e.sharedWithMe ?? !1,
|
|
560
563
|
isEditable: !!(e.isMy || e.canEdit),
|
|
561
|
-
folder:
|
|
562
|
-
credentials:
|
|
563
|
-
details:
|
|
564
|
+
folder: Qe(e, r),
|
|
565
|
+
credentials: Ke(e.id, e.authSettings, n),
|
|
566
|
+
details: c.length > 0 ? { tools: { tools: c.map((e) => ({ name: e })) } } : void 0
|
|
564
567
|
};
|
|
565
|
-
},
|
|
566
|
-
[
|
|
567
|
-
[
|
|
568
|
-
[
|
|
569
|
-
},
|
|
568
|
+
}, tt = {
|
|
569
|
+
[f.Personal]: "personal",
|
|
570
|
+
[f.SharedWithMe]: "shared",
|
|
571
|
+
[f.Public]: "public"
|
|
572
|
+
}, nt = (e, t, n) => [n[tt[t]], ...e.split("/").filter(Boolean).map(r)], K = (e, t) => {
|
|
570
573
|
let n = [];
|
|
571
574
|
return e.author && n.push({
|
|
572
575
|
label: t.authorLabel,
|
|
573
576
|
value: e.author
|
|
574
577
|
}), n.push({
|
|
575
578
|
label: t.updatedLabel,
|
|
576
|
-
value:
|
|
579
|
+
value: p(e.updatedAt)
|
|
577
580
|
}), { sections: [{
|
|
578
581
|
title: t.sectionTitle,
|
|
579
582
|
specs: n
|
|
580
583
|
}] };
|
|
581
|
-
},
|
|
582
|
-
let a = r ===
|
|
584
|
+
}, rt = (e) => !e.isMyApp && !e.sharedWithMe, it = (e, { folderLabels: t, overviewLabels: n, source: r, favoriteIds: i }) => {
|
|
585
|
+
let a = r === f.Personal, o = e.id, s = i.has(o);
|
|
583
586
|
return {
|
|
584
|
-
id:
|
|
585
|
-
type:
|
|
587
|
+
id: o,
|
|
588
|
+
type: g.Prompt,
|
|
586
589
|
name: e.name,
|
|
587
590
|
description: e.description ?? "",
|
|
588
591
|
version: "",
|
|
589
|
-
lastUsed:
|
|
592
|
+
lastUsed: y(e.updatedAt),
|
|
590
593
|
createdAt: e.createdAt,
|
|
591
594
|
updatedAt: e.updatedAt,
|
|
592
595
|
isFeatured: !1,
|
|
593
596
|
isHidden: !1,
|
|
594
597
|
topics: [],
|
|
595
|
-
isUserFavorite:
|
|
596
|
-
isStarred:
|
|
598
|
+
isUserFavorite: s,
|
|
599
|
+
isStarred: s,
|
|
597
600
|
isMyApp: e.isMy ?? a,
|
|
598
|
-
sharedWithMe: e.sharedWithMe ?? r ===
|
|
599
|
-
isEditable: r !==
|
|
600
|
-
folder:
|
|
601
|
+
sharedWithMe: e.sharedWithMe ?? r === f.SharedWithMe,
|
|
602
|
+
isEditable: r !== f.Public && (e.canEdit ?? a),
|
|
603
|
+
folder: nt(e.folderId, r, t),
|
|
601
604
|
details: {
|
|
602
605
|
...e.content ? { promptContent: { content: e.content } } : void 0,
|
|
603
|
-
overview:
|
|
606
|
+
overview: K(e, n)
|
|
604
607
|
}
|
|
605
608
|
};
|
|
606
|
-
},
|
|
609
|
+
}, q = /* @__PURE__ */ function(e) {
|
|
607
610
|
return e.Personal = "personal", e.SharedWithMe = "sharedWithMe", e.Public = "public", e;
|
|
608
|
-
}({}),
|
|
609
|
-
if (!e.startsWith(
|
|
611
|
+
}({}), at = "public", ot = "skills/", st = 256 * 1024, ct = 1e3, lt = 10, J = (e) => {
|
|
612
|
+
if (!e.startsWith(ot)) return null;
|
|
610
613
|
let t = e.slice(7), n = t.indexOf("/");
|
|
611
614
|
if (n <= 0) return null;
|
|
612
615
|
let r = t.slice(0, n), i = t.slice(n + 1);
|
|
@@ -614,19 +617,19 @@ var re = (e) => ({
|
|
|
614
617
|
bucket: r,
|
|
615
618
|
path: i
|
|
616
619
|
};
|
|
617
|
-
},
|
|
618
|
-
[
|
|
619
|
-
[
|
|
620
|
-
[
|
|
621
|
-
},
|
|
622
|
-
let i = r.has(e.url), a = n ===
|
|
620
|
+
}, ut = {
|
|
621
|
+
[q.Personal]: "personal",
|
|
622
|
+
[q.SharedWithMe]: "shared",
|
|
623
|
+
[q.Public]: "public"
|
|
624
|
+
}, dt = (e, t, n) => [n[ut[t]], ...(e ?? "").split("/").filter(Boolean).map(r)], ft = (e, { folderLabels: t, source: n, favoriteIds: r }) => {
|
|
625
|
+
let i = r.has(e.url), a = n === q.Public, o = n === q.Personal;
|
|
623
626
|
return {
|
|
624
627
|
id: e.url,
|
|
625
|
-
type:
|
|
628
|
+
type: g.Skill,
|
|
626
629
|
name: e.name,
|
|
627
630
|
description: "",
|
|
628
631
|
version: "",
|
|
629
|
-
lastUsed:
|
|
632
|
+
lastUsed: y(e.updatedAt),
|
|
630
633
|
createdAt: e.createdAt,
|
|
631
634
|
updatedAt: e.updatedAt,
|
|
632
635
|
isFeatured: !1,
|
|
@@ -635,11 +638,11 @@ var re = (e) => ({
|
|
|
635
638
|
isUserFavorite: i,
|
|
636
639
|
isStarred: i,
|
|
637
640
|
isMyApp: o && (e.isMy ?? !0),
|
|
638
|
-
sharedWithMe: e.sharedWithMe ?? n ===
|
|
641
|
+
sharedWithMe: e.sharedWithMe ?? n === q.SharedWithMe,
|
|
639
642
|
isEditable: !a && (e.canEdit ?? o),
|
|
640
|
-
folder:
|
|
643
|
+
folder: dt(e.parentPath, n, t)
|
|
641
644
|
};
|
|
642
|
-
},
|
|
645
|
+
}, pt = (e) => e.join(" · "), mt = (e, t) => {
|
|
643
646
|
if (e == null) return null;
|
|
644
647
|
let n = [];
|
|
645
648
|
return e.whenToUse != null && n.push({
|
|
@@ -647,25 +650,25 @@ var re = (e) => ({
|
|
|
647
650
|
value: e.whenToUse
|
|
648
651
|
}), e.allowedTools?.length && n.push({
|
|
649
652
|
label: t.allowedToolsLabel,
|
|
650
|
-
value:
|
|
653
|
+
value: pt(e.allowedTools)
|
|
651
654
|
}), e.bundledResources?.length && n.push({
|
|
652
655
|
label: t.bundledResourcesLabel,
|
|
653
|
-
value:
|
|
656
|
+
value: pt(e.bundledResources)
|
|
654
657
|
}), n.length === 0 ? null : {
|
|
655
658
|
title: t.specificationSectionTitle,
|
|
656
659
|
specs: n
|
|
657
660
|
};
|
|
658
|
-
},
|
|
659
|
-
let r =
|
|
660
|
-
return
|
|
661
|
-
let n = e
|
|
661
|
+
}, ht = (e) => e.filter((e) => e.nodeType === M.Item), gt = (e, n) => {
|
|
662
|
+
let r = t(n), i = r ? `${r}/files` : "files";
|
|
663
|
+
return ht(e).find((e) => {
|
|
664
|
+
let n = t(e.path);
|
|
662
665
|
return n === "SKILL.md" || n === "files/SKILL.md" || n === `${i}/SKILL.md`;
|
|
663
666
|
})?.path ?? "SKILL.md";
|
|
664
|
-
},
|
|
665
|
-
let r = e
|
|
667
|
+
}, _t = (e, n) => {
|
|
668
|
+
let r = t(e), i = t(n), a = i ? `${i}/files` : "files";
|
|
666
669
|
return r === "" || r === "files" || r === a ? null : r.startsWith(`${a}/`) ? r.slice(a.length + 1) : r.startsWith("files/") ? r.slice(6) : r;
|
|
667
|
-
},
|
|
668
|
-
let i = [], a =
|
|
670
|
+
}, Y = (e, t) => _t(e, t), vt = (e, t, n, r) => {
|
|
671
|
+
let i = [], a = mt(n, r);
|
|
669
672
|
a != null && i.push(a);
|
|
670
673
|
let o = [];
|
|
671
674
|
return e?.author && o.push({
|
|
@@ -673,26 +676,26 @@ var re = (e) => ({
|
|
|
673
676
|
value: e.author
|
|
674
677
|
}), o.push({
|
|
675
678
|
label: r.updatedLabel,
|
|
676
|
-
value: e?.updatedAt ?
|
|
679
|
+
value: e?.updatedAt ? p(e.updatedAt) : ""
|
|
677
680
|
}), o.push({
|
|
678
681
|
label: r.fileCountLabel,
|
|
679
|
-
value: String(
|
|
682
|
+
value: String(ht(t).length)
|
|
680
683
|
}), i.push({
|
|
681
684
|
title: r.detailsSectionTitle,
|
|
682
685
|
specs: o
|
|
683
686
|
}), { sections: i };
|
|
684
|
-
},
|
|
687
|
+
}, X = (e, t, n) => {
|
|
685
688
|
if (e === "") return n;
|
|
686
689
|
let r = t.get(e);
|
|
687
690
|
if (r != null) return r.items;
|
|
688
|
-
let i = e.split("/"), a =
|
|
689
|
-
type:
|
|
691
|
+
let i = e.split("/"), a = X(i.slice(0, -1).join("/"), t, n), o = {
|
|
692
|
+
type: E.Folder,
|
|
690
693
|
id: e,
|
|
691
694
|
name: i[i.length - 1],
|
|
692
695
|
items: []
|
|
693
696
|
};
|
|
694
697
|
return t.set(e, o), a.push(o), o.items;
|
|
695
|
-
},
|
|
698
|
+
}, yt = (e, t) => {
|
|
696
699
|
e.sort((e, n) => {
|
|
697
700
|
if (t) {
|
|
698
701
|
if (e.name === "SKILL.md") return -1;
|
|
@@ -700,75 +703,75 @@ var re = (e) => ({
|
|
|
700
703
|
}
|
|
701
704
|
return e.name.localeCompare(n.name);
|
|
702
705
|
});
|
|
703
|
-
for (let t of e) t.type ===
|
|
704
|
-
},
|
|
706
|
+
for (let t of e) t.type === E.Folder && yt(t.items, !1);
|
|
707
|
+
}, bt = (e, t) => {
|
|
705
708
|
let n = /* @__PURE__ */ new Map(), r = [];
|
|
706
709
|
for (let i of e) {
|
|
707
|
-
let e =
|
|
710
|
+
let e = _t(i.path, t);
|
|
708
711
|
if (e == null) continue;
|
|
709
|
-
if (i.nodeType ===
|
|
710
|
-
|
|
712
|
+
if (i.nodeType === M.Folder) {
|
|
713
|
+
X(e, n, r);
|
|
711
714
|
continue;
|
|
712
715
|
}
|
|
713
716
|
let a = e.lastIndexOf("/");
|
|
714
|
-
|
|
715
|
-
type:
|
|
717
|
+
X(a === -1 ? "" : e.slice(0, a), n, r).push({
|
|
718
|
+
type: E.File,
|
|
716
719
|
id: i.path,
|
|
717
720
|
name: i.name
|
|
718
721
|
});
|
|
719
722
|
}
|
|
720
|
-
return
|
|
721
|
-
},
|
|
723
|
+
return yt(r, !0), r;
|
|
724
|
+
}, Z = async (e) => {
|
|
722
725
|
let t = Number(e.headers.get("content-length"));
|
|
723
726
|
if (Number.isFinite(t) && t > 262144) return null;
|
|
724
727
|
let n = await e.arrayBuffer();
|
|
725
728
|
return n.byteLength > 262144 ? null : new Uint8Array(n);
|
|
726
|
-
},
|
|
727
|
-
let t = await
|
|
729
|
+
}, Q = async (e) => {
|
|
730
|
+
let t = await Z(e);
|
|
728
731
|
return t == null ? null : new TextDecoder().decode(t);
|
|
729
|
-
},
|
|
732
|
+
}, xt = /* @__PURE__ */ function(e) {
|
|
730
733
|
return e.Toolset = "toolset", e.Application = "application", e;
|
|
731
|
-
}({}),
|
|
734
|
+
}({}), St = (e) => {
|
|
732
735
|
try {
|
|
733
736
|
return decodeURIComponent(e);
|
|
734
737
|
} catch {
|
|
735
738
|
return e;
|
|
736
739
|
}
|
|
737
|
-
},
|
|
738
|
-
toolset:
|
|
739
|
-
application:
|
|
740
|
-
},
|
|
741
|
-
let r =
|
|
740
|
+
}, Ct = (e) => e.split("/").map((e) => encodeURIComponent(St(e))).join("/"), wt = (e) => e.endsWith("/") ? e.slice(0, -1) : e, Tt = (e, t) => `${wt(e)}/v1/toolset/${Ct(t)}/mcp`, Et = (e, t) => `${wt(e)}/v1/deployments/${Ct(t)}/mcp`, Dt = {
|
|
741
|
+
toolset: Tt,
|
|
742
|
+
application: Et
|
|
743
|
+
}, Ot = (e, t) => e === g.Toolset ? "toolset" : e === g.Agent && t === !0 ? "application" : null, kt = (e, t, n) => {
|
|
744
|
+
let r = Dt[n](e, t);
|
|
742
745
|
return {
|
|
743
746
|
resource: { endpointUrl: r },
|
|
744
747
|
snippets: [{
|
|
745
|
-
language:
|
|
748
|
+
language: O.Curl,
|
|
746
749
|
code: `curl -X POST ${r} \\\n -H 'Content-Type: application/json' \\\n -H 'Api-Key: <key>' \\\n -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'`
|
|
747
750
|
}]
|
|
748
751
|
};
|
|
749
|
-
},
|
|
750
|
-
[
|
|
751
|
-
[
|
|
752
|
-
[
|
|
753
|
-
[
|
|
754
|
-
[
|
|
755
|
-
},
|
|
752
|
+
}, At = {
|
|
753
|
+
[g.Model]: "model",
|
|
754
|
+
[g.Toolset]: "toolset",
|
|
755
|
+
[g.Agent]: "application",
|
|
756
|
+
[g.Prompt]: "prompt",
|
|
757
|
+
[g.Skill]: "skill"
|
|
758
|
+
}, jt = (e) => At[e], Mt = (e) => ({
|
|
756
759
|
version: e.version,
|
|
757
760
|
publishedAt: Date.parse(e.publishedAt),
|
|
758
761
|
folderPath: e.folderPath.split("/").filter(Boolean)
|
|
759
|
-
}),
|
|
762
|
+
}), Nt = (e) => ({
|
|
760
763
|
publishedAt: Date.parse(e.publishedAt),
|
|
761
764
|
folderPath: e.folderPath.split("/").filter(Boolean)
|
|
762
|
-
}),
|
|
765
|
+
}), Pt = (e, t) => e.filter((e) => t.has(e.type)), Ft = (e, t) => t ? e.filter((e) => !e.isMyApp) : [...e], It = (e) => e.filter((e) => e.isUserFavorite), Lt = (e, t) => {
|
|
763
766
|
let n = new Set(e.map((e) => e.type));
|
|
764
767
|
return t.filter((e) => n.has(e));
|
|
765
|
-
},
|
|
768
|
+
}, Rt = (e, t) => {
|
|
766
769
|
let n = new Set(t.flatMap((e) => e.topics));
|
|
767
770
|
return new Set(Array.from(e).filter((e) => n.has(e)));
|
|
768
|
-
},
|
|
771
|
+
}, zt = /* @__PURE__ */ function(e) {
|
|
769
772
|
return e.Deployment = "deployment", e.Prompt = "prompt", e;
|
|
770
|
-
}({}),
|
|
771
|
-
if (e.type !==
|
|
773
|
+
}({}), Bt = async (e, t) => {
|
|
774
|
+
if (e.type !== g.Prompt) return {
|
|
772
775
|
kind: "deployment",
|
|
773
776
|
id: e.id
|
|
774
777
|
};
|
|
@@ -779,56 +782,156 @@ var re = (e) => ({
|
|
|
779
782
|
name: e.name,
|
|
780
783
|
description: e.description,
|
|
781
784
|
content: n,
|
|
782
|
-
hasParameters:
|
|
785
|
+
hasParameters: _(n).length > 0
|
|
783
786
|
};
|
|
784
|
-
},
|
|
785
|
-
|
|
786
|
-
|
|
787
|
+
}, Vt = ({ deployments: t, isCustomAppsEnabled: n, isSchemaAppsEnabled: r, isHideCustomAppCreationEnabled: a, isToolsetsEnabled: o, isPromptsEnabled: s, quickAppSchemaId: c, urls: l, onNavigate: u, deletePrompt: d, deleteToolset: f, deleteSkill: p, deleteApplication: m, refetchPrompts: h, refetchToolsets: _, refetchSkills: v, refetchDeployments: y, onDeleteSuccess: b, labels: S, onNotify: w, triggerSkillArchivePicker: T }) => ({
|
|
788
|
+
handleEdit: x((e) => {
|
|
789
|
+
if (e.type === g.Prompt) {
|
|
790
|
+
u(l.buildPromptEditUrl(e.id));
|
|
791
|
+
return;
|
|
792
|
+
}
|
|
793
|
+
if (e.type === g.Skill) {
|
|
794
|
+
u(l.buildSkillEditUrl(e.id));
|
|
795
|
+
return;
|
|
796
|
+
}
|
|
797
|
+
if (e.type === g.Toolset) {
|
|
798
|
+
u(l.buildToolsetEditUrl(e.id));
|
|
799
|
+
return;
|
|
800
|
+
}
|
|
801
|
+
let r = i(t, e.id);
|
|
802
|
+
if (n && r != null && !r.applicationTypeSchemaId) {
|
|
803
|
+
u(l.buildCustomAppEditUrl(e.id));
|
|
804
|
+
return;
|
|
805
|
+
}
|
|
806
|
+
c && u(l.buildQuickAppEditUrl(c, e.id));
|
|
807
|
+
}, [
|
|
808
|
+
t,
|
|
809
|
+
n,
|
|
810
|
+
c,
|
|
811
|
+
u,
|
|
812
|
+
l
|
|
813
|
+
]),
|
|
814
|
+
handleDelete: x(async (t) => {
|
|
815
|
+
try {
|
|
816
|
+
if (t.type === g.Prompt) await d(t.id), await h();
|
|
817
|
+
else if (t.type === g.Toolset) await f(t.id), await _();
|
|
818
|
+
else if (t.type === g.Skill) {
|
|
819
|
+
let e = J(t.id);
|
|
820
|
+
if (e == null) throw Error(`Invalid skill resource url: ${t.id}`);
|
|
821
|
+
await p(e.bucket, e.path), await v();
|
|
822
|
+
} else await m(t.id), await y();
|
|
823
|
+
b(t);
|
|
824
|
+
} catch (t) {
|
|
825
|
+
let { traceId: n } = await e(t);
|
|
826
|
+
throw w({
|
|
827
|
+
message: S.deleteError,
|
|
828
|
+
requestId: n
|
|
829
|
+
}), t;
|
|
830
|
+
}
|
|
831
|
+
}, [
|
|
832
|
+
d,
|
|
833
|
+
f,
|
|
834
|
+
p,
|
|
835
|
+
m,
|
|
836
|
+
_,
|
|
837
|
+
y,
|
|
838
|
+
h,
|
|
839
|
+
v,
|
|
840
|
+
b,
|
|
841
|
+
S,
|
|
842
|
+
w
|
|
843
|
+
]),
|
|
844
|
+
createOptions: C(() => {
|
|
845
|
+
let e = [];
|
|
846
|
+
return c && r && !a && e.push({
|
|
847
|
+
key: "quick-app",
|
|
848
|
+
label: S.createQuickApp,
|
|
849
|
+
onClick: () => u(l.buildQuickAppCreateUrl(c))
|
|
850
|
+
}), o && e.push({
|
|
851
|
+
key: "toolset",
|
|
852
|
+
label: S.createToolset,
|
|
853
|
+
onClick: () => u(l.buildToolsetCreateUrl())
|
|
854
|
+
}), n && !a && e.push({
|
|
855
|
+
key: "custom-app",
|
|
856
|
+
label: S.createCustomApp,
|
|
857
|
+
onClick: () => u(l.buildCustomAppCreateUrl())
|
|
858
|
+
}), e.push({
|
|
859
|
+
key: "skill",
|
|
860
|
+
label: S.createSkill,
|
|
861
|
+
children: [{
|
|
862
|
+
key: "skill-write-instructions",
|
|
863
|
+
label: S.createSkillWriteInstructions,
|
|
864
|
+
onClick: () => u(l.buildSkillCreateUrl())
|
|
865
|
+
}, {
|
|
866
|
+
key: "skill-upload",
|
|
867
|
+
label: S.createSkillUpload,
|
|
868
|
+
onClick: T
|
|
869
|
+
}]
|
|
870
|
+
}), s && e.push({
|
|
871
|
+
key: "prompt",
|
|
872
|
+
label: S.createPrompt,
|
|
873
|
+
onClick: () => u(l.buildPromptCreateUrl())
|
|
874
|
+
}), e;
|
|
875
|
+
}, [
|
|
876
|
+
c,
|
|
877
|
+
u,
|
|
878
|
+
l,
|
|
879
|
+
s,
|
|
880
|
+
S,
|
|
881
|
+
r,
|
|
882
|
+
a,
|
|
883
|
+
o,
|
|
884
|
+
n,
|
|
885
|
+
T
|
|
886
|
+
])
|
|
887
|
+
}), Ht = (e) => (t) => {
|
|
888
|
+
if (!rt(t)) return e.getPrompt(t.id);
|
|
889
|
+
let n = u(t.id);
|
|
787
890
|
return e.getPublicPrompt(n?.path ?? t.id);
|
|
788
|
-
},
|
|
789
|
-
let s =
|
|
891
|
+
}, Ut = ({ api: e, skills: t, isAdmin: n, dialCoreExternalUrl: r, skillOverviewLabels: i, promptOverviewLabels: a, deploymentLimitsLabels: o }) => {
|
|
892
|
+
let s = w(null);
|
|
790
893
|
return {
|
|
791
|
-
onFetchDetails:
|
|
792
|
-
if (
|
|
793
|
-
let t = await
|
|
894
|
+
onFetchDetails: x(async (c) => {
|
|
895
|
+
if (c.type === g.Prompt) try {
|
|
896
|
+
let t = await Ht(e)(c);
|
|
794
897
|
return {
|
|
795
898
|
promptContent: { content: t.content },
|
|
796
|
-
overview:
|
|
899
|
+
overview: K(t, a)
|
|
797
900
|
};
|
|
798
901
|
} catch {
|
|
799
902
|
return;
|
|
800
903
|
}
|
|
801
|
-
if (
|
|
802
|
-
let n =
|
|
904
|
+
if (c.type === g.Skill) {
|
|
905
|
+
let n = J(c.id);
|
|
803
906
|
if (n == null) return;
|
|
804
907
|
let { bucket: r, path: a } = n;
|
|
805
908
|
s.current = n;
|
|
806
|
-
let [o,
|
|
909
|
+
let [o, l] = await Promise.allSettled([e.downloadSkillFile(r, a, m).then(Q), e.listSkillFiles({
|
|
807
910
|
bucket: r,
|
|
808
911
|
path: a,
|
|
809
912
|
filePath: "",
|
|
810
913
|
recursive: !0
|
|
811
|
-
})]),
|
|
812
|
-
return
|
|
813
|
-
...
|
|
814
|
-
content:
|
|
815
|
-
...
|
|
816
|
-
files:
|
|
914
|
+
})]), u = o.status === "fulfilled" && o.value != null ? h(o.value) : void 0, d = t.find((e) => e.url === c.id), f = l.status === "fulfilled" ? vt(d, l.value.items, u?.about, i) : void 0, p = l.status === "fulfilled" ? bt(l.value.items, a) : [], g = l.status === "fulfilled" ? gt(l.value.items, a) : m;
|
|
915
|
+
return u == null && f == null ? void 0 : {
|
|
916
|
+
...u == null ? {} : { promptContent: {
|
|
917
|
+
content: u.body,
|
|
918
|
+
...u.description == null ? {} : { description: u.description },
|
|
919
|
+
files: p,
|
|
817
920
|
selectedFileId: g
|
|
818
921
|
} },
|
|
819
|
-
...
|
|
922
|
+
...f == null ? {} : { overview: f }
|
|
820
923
|
};
|
|
821
924
|
}
|
|
822
925
|
try {
|
|
823
|
-
let t =
|
|
926
|
+
let t = c.type === g.Model ? e.getDeploymentLimits(c.id).catch(() => void 0) : Promise.resolve(void 0), [i, a] = await Promise.all([e.getDeploymentDetails(c.id), t]), s = Ue(i), l = U(s), u = Ot(c.type, c.supportsMcp), d = s.type === "MODEL" || s.type === "AGENT" ? fe(r ?? "", c.id, {
|
|
824
927
|
hasChatCompletion: s.data.capabilities?.hasChatCompletion,
|
|
825
928
|
hasResponsesApi: s.data.capabilities?.hasResponsesApi
|
|
826
929
|
}) : void 0;
|
|
827
930
|
return {
|
|
828
|
-
...
|
|
829
|
-
api:
|
|
830
|
-
limits:
|
|
831
|
-
credentials: s.type === "TOOLSET" ?
|
|
931
|
+
...l,
|
|
932
|
+
api: u == null ? d ?? l.api : kt(r ?? "", c.id, u),
|
|
933
|
+
limits: R(a, o),
|
|
934
|
+
credentials: s.type === "TOOLSET" ? Pe(c.id, s.data, n) : void 0
|
|
832
935
|
};
|
|
833
936
|
} catch {
|
|
834
937
|
return;
|
|
@@ -842,22 +945,22 @@ var re = (e) => ({
|
|
|
842
945
|
a,
|
|
843
946
|
i
|
|
844
947
|
]),
|
|
845
|
-
onLoadContentFile:
|
|
948
|
+
onLoadContentFile: x(async (t) => {
|
|
846
949
|
let n = s.current;
|
|
847
950
|
if (n == null) return;
|
|
848
|
-
let r =
|
|
951
|
+
let r = Y(t, n.path);
|
|
849
952
|
if (r == null) return;
|
|
850
|
-
let i = await
|
|
851
|
-
if (i != null) return r === "SKILL.md" ?
|
|
953
|
+
let i = await Q(await e.downloadSkillFile(n.bucket, n.path, r));
|
|
954
|
+
if (i != null) return r === "SKILL.md" ? h(i).body : i;
|
|
852
955
|
}, [e]),
|
|
853
|
-
onLoadSkillDetailsFile:
|
|
956
|
+
onLoadSkillDetailsFile: x(async (t) => {
|
|
854
957
|
let n = s.current;
|
|
855
958
|
if (n == null) throw Error("No skill details are open");
|
|
856
|
-
let r =
|
|
959
|
+
let r = Y(t, n.path);
|
|
857
960
|
if (r == null) throw Error("A folder cannot be previewed");
|
|
858
961
|
let i = await e.downloadSkillFile(n.bucket, n.path, r);
|
|
859
962
|
if (!i.ok) throw Object.assign(/* @__PURE__ */ Error(`File preview failed with status ${i.status}`), { status: i.status });
|
|
860
|
-
let a = await
|
|
963
|
+
let a = await Z(i);
|
|
861
964
|
if (a == null) throw Error("File exceeds the preview size limit");
|
|
862
965
|
let o = i.headers.get("content-type")?.split(";")[0].trim() || void 0;
|
|
863
966
|
return {
|
|
@@ -866,11 +969,147 @@ var re = (e) => ({
|
|
|
866
969
|
};
|
|
867
970
|
}, [e])
|
|
868
971
|
};
|
|
869
|
-
},
|
|
972
|
+
}, $ = (e, t, n) => e === A.User ? n.user : t ? n.org : n.global, Wt = (e) => {
|
|
973
|
+
switch (e) {
|
|
974
|
+
case j.ApiKey: return s.ApiKey;
|
|
975
|
+
case j.OAuth: return s.OAuth;
|
|
976
|
+
case j.None:
|
|
977
|
+
case void 0: return s.None;
|
|
978
|
+
}
|
|
979
|
+
}, Gt = ({ isAdmin: t, toolsets: n, refetchToolsets: r, callbackPath: i, loginToolset: a, logoutToolset: s, getToolset: u, labels: d, onNotify: f }) => {
|
|
980
|
+
let p = x((e, t) => t === A.User ? e.credentials?.userStatus : e.credentials?.globalStatus, []), m = x((e, n) => {
|
|
981
|
+
let r = t && !!e.credentials?.isPublic;
|
|
982
|
+
if (e.credentials?.authenticationType === j.ApiKey) {
|
|
983
|
+
let t = $(n, r, d.apiKeyAddedSuccess);
|
|
984
|
+
f({
|
|
985
|
+
variant: N.Success,
|
|
986
|
+
title: d.apiKeyAddedSuccessTitle,
|
|
987
|
+
message: t({
|
|
988
|
+
name: e.name,
|
|
989
|
+
version: e.version
|
|
990
|
+
})
|
|
991
|
+
});
|
|
992
|
+
return;
|
|
993
|
+
}
|
|
994
|
+
let i = $(n, r, d.loginSuccess);
|
|
995
|
+
f({
|
|
996
|
+
variant: N.Success,
|
|
997
|
+
title: d.loginSuccessTitle,
|
|
998
|
+
message: i({
|
|
999
|
+
name: e.name,
|
|
1000
|
+
version: e.version
|
|
1001
|
+
})
|
|
1002
|
+
});
|
|
1003
|
+
}, [
|
|
1004
|
+
t,
|
|
1005
|
+
d,
|
|
1006
|
+
f
|
|
1007
|
+
]), h = x((e, n) => {
|
|
1008
|
+
let r = t && !!e.credentials?.isPublic;
|
|
1009
|
+
if (e.credentials?.authenticationType === j.ApiKey) {
|
|
1010
|
+
let t = $(n, r, d.apiKeyDeletedSuccess);
|
|
1011
|
+
f({
|
|
1012
|
+
variant: N.Success,
|
|
1013
|
+
title: d.apiKeyDeletedSuccessTitle,
|
|
1014
|
+
message: t({
|
|
1015
|
+
name: e.name,
|
|
1016
|
+
version: e.version
|
|
1017
|
+
})
|
|
1018
|
+
});
|
|
1019
|
+
return;
|
|
1020
|
+
}
|
|
1021
|
+
let i = $(n, r, d.logoutSuccess);
|
|
1022
|
+
f({
|
|
1023
|
+
variant: N.Success,
|
|
1024
|
+
title: d.logoutSuccessTitle,
|
|
1025
|
+
message: i({
|
|
1026
|
+
name: e.name,
|
|
1027
|
+
version: e.version
|
|
1028
|
+
})
|
|
1029
|
+
});
|
|
1030
|
+
}, [
|
|
1031
|
+
t,
|
|
1032
|
+
d,
|
|
1033
|
+
f
|
|
1034
|
+
]), { login: g } = c({
|
|
1035
|
+
callbackPath: i,
|
|
1036
|
+
loginToolset: a,
|
|
1037
|
+
logoutToolset: s,
|
|
1038
|
+
getToolset: u
|
|
1039
|
+
});
|
|
1040
|
+
return {
|
|
1041
|
+
handleLogin: x(async (e, t) => {
|
|
1042
|
+
let i = e.credentials?.authenticationType, a = t.level === A.User ? o.User : o.Global, s = n.find((t) => t.id === e.id);
|
|
1043
|
+
switch ((await g({
|
|
1044
|
+
toolsetId: e.id,
|
|
1045
|
+
credentialsLevel: a,
|
|
1046
|
+
authenticationType: Wt(i),
|
|
1047
|
+
apiKey: t.apiKey,
|
|
1048
|
+
oauthSettings: {
|
|
1049
|
+
clientId: s?.authSettings?.clientId,
|
|
1050
|
+
authorizationEndpoint: s?.authSettings?.authorizationEndpoint,
|
|
1051
|
+
scopes: s?.authSettings?.scopesSupported,
|
|
1052
|
+
codeChallenge: s?.authSettings?.codeChallenge,
|
|
1053
|
+
codeChallengeMethod: s?.authSettings?.codeChallengeMethod
|
|
1054
|
+
},
|
|
1055
|
+
isCurrentlyFailed: p(e, t.level) === k.Failed
|
|
1056
|
+
})).type) {
|
|
1057
|
+
case l.Success:
|
|
1058
|
+
m(e, t.level), await r();
|
|
1059
|
+
return;
|
|
1060
|
+
case l.PopupBlocked:
|
|
1061
|
+
f({
|
|
1062
|
+
variant: N.Error,
|
|
1063
|
+
message: d.popupBlockedError
|
|
1064
|
+
});
|
|
1065
|
+
return;
|
|
1066
|
+
case l.Failure:
|
|
1067
|
+
f({
|
|
1068
|
+
variant: N.Error,
|
|
1069
|
+
message: d.loginFailedError
|
|
1070
|
+
});
|
|
1071
|
+
return;
|
|
1072
|
+
case l.Cancelled: return;
|
|
1073
|
+
}
|
|
1074
|
+
}, [
|
|
1075
|
+
n,
|
|
1076
|
+
d,
|
|
1077
|
+
f,
|
|
1078
|
+
p,
|
|
1079
|
+
m,
|
|
1080
|
+
r,
|
|
1081
|
+
g
|
|
1082
|
+
]),
|
|
1083
|
+
handleLogout: x(async (t, n) => {
|
|
1084
|
+
let i = n.level === A.User ? o.User : o.Global;
|
|
1085
|
+
try {
|
|
1086
|
+
let e = {
|
|
1087
|
+
url: t.id,
|
|
1088
|
+
credentialsLevel: i,
|
|
1089
|
+
authenticationType: t.credentials?.authenticationType
|
|
1090
|
+
};
|
|
1091
|
+
await s(t.id, e), h(t, n.level), await r();
|
|
1092
|
+
} catch (t) {
|
|
1093
|
+
let { traceId: n } = await e(t);
|
|
1094
|
+
f({
|
|
1095
|
+
variant: N.Error,
|
|
1096
|
+
message: d.logoutFailedError,
|
|
1097
|
+
requestId: n
|
|
1098
|
+
});
|
|
1099
|
+
}
|
|
1100
|
+
}, [
|
|
1101
|
+
s,
|
|
1102
|
+
d,
|
|
1103
|
+
f,
|
|
1104
|
+
h,
|
|
1105
|
+
r
|
|
1106
|
+
])
|
|
1107
|
+
};
|
|
1108
|
+
}, Kt = /* @__PURE__ */ function(e) {
|
|
870
1109
|
return e.Deployment = "deployment", e.Toolset = "toolset", e.Prompt = "prompt", e.Skill = "skill", e;
|
|
871
|
-
}({}),
|
|
872
|
-
let [n, r] =
|
|
873
|
-
|
|
1110
|
+
}({}), qt = ({ loadFavorites: e, updateFavorite: t }) => {
|
|
1111
|
+
let [n, r] = T(/* @__PURE__ */ new Set()), [i, a] = T(!0);
|
|
1112
|
+
S(() => {
|
|
874
1113
|
let t = { value: !1 };
|
|
875
1114
|
return (async () => {
|
|
876
1115
|
try {
|
|
@@ -888,7 +1127,7 @@ var re = (e) => ({
|
|
|
888
1127
|
t.value = !0;
|
|
889
1128
|
};
|
|
890
1129
|
}, [e]);
|
|
891
|
-
let o =
|
|
1130
|
+
let o = x(async (e, n, i = "deployment") => {
|
|
892
1131
|
r((t) => {
|
|
893
1132
|
let r = new Set(t);
|
|
894
1133
|
return n ? r.add(e) : r.delete(e), r;
|
|
@@ -902,7 +1141,7 @@ var re = (e) => ({
|
|
|
902
1141
|
}), t;
|
|
903
1142
|
}
|
|
904
1143
|
}, [t]);
|
|
905
|
-
return
|
|
1144
|
+
return C(() => ({
|
|
906
1145
|
favoriteIds: n,
|
|
907
1146
|
isLoading: i,
|
|
908
1147
|
toggleFavorite: o
|
|
@@ -911,24 +1150,24 @@ var re = (e) => ({
|
|
|
911
1150
|
i,
|
|
912
1151
|
o
|
|
913
1152
|
]);
|
|
914
|
-
},
|
|
915
|
-
let i = e.get(
|
|
916
|
-
return i == null ? [] : i.filter((e) => e.nodeType ===
|
|
917
|
-
let a =
|
|
1153
|
+
}, Jt = "Production", Yt = 50, Xt = (e, t, r) => {
|
|
1154
|
+
let i = e.get(t);
|
|
1155
|
+
return i == null ? [] : i.filter((e) => e.nodeType === te.Folder).map((i) => {
|
|
1156
|
+
let a = n(i.name), o = [...r, a], s = `${t}${i.name}/`;
|
|
918
1157
|
return {
|
|
919
1158
|
path: o,
|
|
920
1159
|
name: a,
|
|
921
|
-
children: e.has(s) ?
|
|
1160
|
+
children: e.has(s) ? Xt(e, s, o) : void 0
|
|
922
1161
|
};
|
|
923
1162
|
});
|
|
924
|
-
},
|
|
925
|
-
let [r, i] =
|
|
1163
|
+
}, Zt = ({ listPublicFiles: e, rememberedFolderKeys: t, onRememberedFolderKeysChange: n }) => {
|
|
1164
|
+
let [r, i] = T(() => /* @__PURE__ */ new Map()), [a, o] = T(() => /* @__PURE__ */ new Set()), [s, c] = T(() => /* @__PURE__ */ new Set()), [l, u] = T([]), d = C(() => {
|
|
926
1165
|
let e = /* @__PURE__ */ new Set();
|
|
927
1166
|
return a.forEach((t) => {
|
|
928
1167
|
let n = t ? `${t}/` : "";
|
|
929
1168
|
r.has(n) && e.add(t);
|
|
930
1169
|
}), e;
|
|
931
|
-
}, [a, r]), f =
|
|
1170
|
+
}, [a, r]), f = x(async (t) => {
|
|
932
1171
|
c((e) => new Set(e).add(t));
|
|
933
1172
|
try {
|
|
934
1173
|
let { items: n } = await e({ path: t || void 0 });
|
|
@@ -940,10 +1179,10 @@ var re = (e) => ({
|
|
|
940
1179
|
});
|
|
941
1180
|
}
|
|
942
1181
|
}, [e]);
|
|
943
|
-
|
|
1182
|
+
S(() => {
|
|
944
1183
|
f("");
|
|
945
1184
|
}, []);
|
|
946
|
-
let p =
|
|
1185
|
+
let p = x((e) => {
|
|
947
1186
|
o(e), e.forEach((e) => {
|
|
948
1187
|
let t = `${e}/`;
|
|
949
1188
|
!r.has(t) && !s.has(t) && f(t);
|
|
@@ -952,17 +1191,17 @@ var re = (e) => ({
|
|
|
952
1191
|
r,
|
|
953
1192
|
s,
|
|
954
1193
|
f
|
|
955
|
-
]), m =
|
|
956
|
-
let n =
|
|
1194
|
+
]), m = x((e, t) => {
|
|
1195
|
+
let n = ie([...e, t]);
|
|
957
1196
|
return u((e) => e.includes(n) ? e : [...e, n]), Promise.resolve();
|
|
958
|
-
}, []),
|
|
959
|
-
let r =
|
|
960
|
-
!r || i.includes(r) || n?.([r, ...i].slice(0,
|
|
961
|
-
}, [t, n]),
|
|
1197
|
+
}, []), h = x((e) => {
|
|
1198
|
+
let r = ie(e), i = Array.isArray(t) ? t : [];
|
|
1199
|
+
!r || i.includes(r) || n?.([r, ...i].slice(0, Yt));
|
|
1200
|
+
}, [t, n]), g = x((e) => !e.includes(Jt), []);
|
|
962
1201
|
return {
|
|
963
|
-
folderItems:
|
|
1202
|
+
folderItems: C(() => {
|
|
964
1203
|
let e = Array.isArray(t) ? t.filter((e) => typeof e == "string") : [];
|
|
965
|
-
return
|
|
1204
|
+
return re(Xt(r, "", []), [...e.map(ne), ...l.map(ne)]);
|
|
966
1205
|
}, [
|
|
967
1206
|
r,
|
|
968
1207
|
t,
|
|
@@ -973,14 +1212,14 @@ var re = (e) => ({
|
|
|
973
1212
|
loadingPaths: s,
|
|
974
1213
|
onExpandedPathsChange: p,
|
|
975
1214
|
onCreatePublishFolder: m,
|
|
976
|
-
rememberPublishFolder:
|
|
977
|
-
hasPublishWriteAccess:
|
|
1215
|
+
rememberPublishFolder: h,
|
|
1216
|
+
hasPublishWriteAccess: g
|
|
978
1217
|
};
|
|
979
|
-
},
|
|
1218
|
+
}, Qt = /* @__PURE__ */ function(e) {
|
|
980
1219
|
return e.Forbidden = "forbidden", e.Generic = "generic", e;
|
|
981
|
-
}({}),
|
|
982
|
-
let [n, r] =
|
|
983
|
-
return
|
|
1220
|
+
}({}), $t = ({ fileId: e, onLoadFile: t }) => {
|
|
1221
|
+
let [n, r] = T(!1), [i, a] = T(null), [o, s] = T(null);
|
|
1222
|
+
return S(() => {
|
|
984
1223
|
let n = !1;
|
|
985
1224
|
return r(!0), a(null), s(null), (async () => {
|
|
986
1225
|
try {
|
|
@@ -1002,4 +1241,4 @@ var re = (e) => ({
|
|
|
1002
1241
|
};
|
|
1003
1242
|
};
|
|
1004
1243
|
//#endregion
|
|
1005
|
-
export {
|
|
1244
|
+
export { oe as $, gt as A, $e as B, Ot as C, Z as D, ft as E, q as F, U as G, et as H, J as I, R as J, Pe as K, K as L, lt as M, ct as N, Q as O, st as P, de as Q, rt as R, Tt as S, vt as T, Ze as U, Ke as V, Ue as W, ue as X, P as Y, fe as Z, Mt as _, qt as a, Et as b, Vt as c, Lt as d, ae as et, It as f, Nt as g, Rt as h, Kt as i, at as j, Y as k, zt as l, Ft as m, $t as n, Gt as o, Pt as p, we as q, Zt as r, Ut as s, Qt as t, Bt as u, jt as v, bt as w, kt as x, xt as y, it as z };
|