@epam/ai-dial-chat-hooks 1.1.0-dev.431 → 1.1.0-dev.433
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/useCatalogEditNavigation/useCatalogEditNavigation.js +1 -1
- package/catalog/useCatalogItemDetails.js +31 -72
- package/catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.js +59 -0
- package/catalog/useSkillItemDetails.js +72 -0
- package/catalog.d.ts +119 -15
- package/catalog.js +8 -6
- package/index.d.ts +119 -15
- package/index.js +102 -100
- package/package.json +15 -15
|
@@ -4,7 +4,7 @@ import { parseSkillResourceUrl as n } from "../../skill/skill-types.js";
|
|
|
4
4
|
import { CatalogEntityType as r } from "@epam/ai-dial-chat-shared";
|
|
5
5
|
import { useCallback as i, useMemo as a } from "react";
|
|
6
6
|
//#region src/catalog/useCatalogEditNavigation/useCatalogEditNavigation.ts
|
|
7
|
-
var o = ({ deployments: o, isCustomAppsEnabled: s, isSchemaAppsEnabled: c, isHideCustomAppCreationEnabled: l, isToolsetsEnabled: u, isPromptsEnabled: d, quickAppSchemaId: f, urls: p, onNavigate: m, deletePrompt: h, deleteToolset: g, deleteSkill: _, deleteApplication: v, refetchPrompts: y, refetchToolsets: b, refetchSkills: x, refetchDeployments: S, onDeleteSuccess: C, labels: w, onNotify: T,
|
|
7
|
+
var o = ({ deployments: o, isCustomAppsEnabled: s, isSchemaAppsEnabled: c, isHideCustomAppCreationEnabled: l, isToolsetsEnabled: u, isPromptsEnabled: d, quickAppSchemaId: f, urls: p, onNavigate: m, deletePrompt: h, deleteToolset: g, deleteSkill: _, deleteApplication: v, refetchPrompts: y, refetchToolsets: b, refetchSkills: x, refetchDeployments: S, onDeleteSuccess: C, labels: w, onNotify: T, onSkillUploadClick: E }) => ({
|
|
8
8
|
handleEdit: i((e) => {
|
|
9
9
|
if (e.type === r.Prompt) {
|
|
10
10
|
m(p.buildPromptEditUrl(e.id));
|
|
@@ -3,99 +3,58 @@ import { mapDeploymentLimitsDtoToCatalogLimits as t } from "./map-deployment-lim
|
|
|
3
3
|
import { mapDeploymentDetailsDtoToEntityDetails as n, mapEntityDetailsToCatalogDetails as r, mapToolsetCredentials as i } from "./map-entity-details-to-catalog.js";
|
|
4
4
|
import { parsePromptResourceUrl as a } from "../prompt/prompt-resource.js";
|
|
5
5
|
import { buildPromptOverview as o, isOrganisationPromptItem as s } from "./map-prompt-to-catalog-item.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { parseSkillManifestDocument as v } from "../skill/skill-manifest.js";
|
|
11
|
-
import { CatalogEntityType as y } from "@epam/ai-dial-chat-shared";
|
|
12
|
-
import { useCallback as b, useRef as x } from "react";
|
|
6
|
+
import { buildConnectApi as c, resolveMcpResourceKind as l } from "./mcp-endpoint-url.js";
|
|
7
|
+
import { useSkillItemDetails as u } from "./useSkillItemDetails.js";
|
|
8
|
+
import { CatalogEntityType as d } from "@epam/ai-dial-chat-shared";
|
|
9
|
+
import { useCallback as f } from "react";
|
|
13
10
|
//#region src/catalog/useCatalogItemDetails.ts
|
|
14
|
-
var
|
|
11
|
+
var p = (e) => (t) => {
|
|
15
12
|
if (!s(t)) return e.getPrompt(t.id);
|
|
16
13
|
let n = a(t.id);
|
|
17
14
|
return e.getPublicPrompt(n?.path ?? t.id);
|
|
18
|
-
},
|
|
19
|
-
let
|
|
15
|
+
}, m = ({ api: a, skills: s, isAdmin: m, dialCoreExternalUrl: h, skillOverviewLabels: g, promptOverviewLabels: _, deploymentLimitsLabels: v }) => {
|
|
16
|
+
let { onFetchSkillDetails: y, onLoadContentFile: b, onLoadSkillDetailsFile: x } = u({
|
|
17
|
+
api: a,
|
|
18
|
+
skills: s,
|
|
19
|
+
skillOverviewLabels: g
|
|
20
|
+
});
|
|
20
21
|
return {
|
|
21
|
-
onFetchDetails:
|
|
22
|
-
if (
|
|
23
|
-
let e = await
|
|
22
|
+
onFetchDetails: f(async (s) => {
|
|
23
|
+
if (s.type === d.Prompt) try {
|
|
24
|
+
let e = await p(a)(s);
|
|
24
25
|
return {
|
|
25
26
|
promptContent: { content: e.content },
|
|
26
|
-
overview: o(e,
|
|
27
|
+
overview: o(e, _)
|
|
27
28
|
};
|
|
28
29
|
} catch {
|
|
29
30
|
return;
|
|
30
31
|
}
|
|
31
|
-
if (
|
|
32
|
-
let e = l(f.id);
|
|
33
|
-
if (e == null) return;
|
|
34
|
-
let { bucket: t, path: n } = e;
|
|
35
|
-
O.current = e;
|
|
36
|
-
let [r, i] = await Promise.allSettled([a.downloadSkillFile(t, n, c).then(p), a.listSkillFiles({
|
|
37
|
-
bucket: t,
|
|
38
|
-
path: n,
|
|
39
|
-
filePath: "",
|
|
40
|
-
recursive: !0
|
|
41
|
-
})]), o = r.status === "fulfilled" && r.value != null ? v(r.value) : void 0, m = s.find((e) => e.url === f.id), g = i.status === "fulfilled" ? d(m, i.value.items, o?.about, T) : void 0, _ = i.status === "fulfilled" ? u(i.value.items, n) : [], y = i.status === "fulfilled" ? h(i.value.items, n) : c;
|
|
42
|
-
return o == null && g == null ? void 0 : {
|
|
43
|
-
...o == null ? {} : { promptContent: {
|
|
44
|
-
content: o.body,
|
|
45
|
-
...o.description == null ? {} : { description: o.description },
|
|
46
|
-
files: _,
|
|
47
|
-
selectedFileId: y
|
|
48
|
-
} },
|
|
49
|
-
...g == null ? {} : { overview: g }
|
|
50
|
-
};
|
|
51
|
-
}
|
|
32
|
+
if (s.type === d.Skill) return y(s);
|
|
52
33
|
try {
|
|
53
|
-
let o =
|
|
54
|
-
hasChatCompletion:
|
|
55
|
-
hasResponsesApi:
|
|
34
|
+
let o = s.type === d.Model ? a.getDeploymentLimits(s.id).catch(() => void 0) : Promise.resolve(void 0), [u, f] = await Promise.all([a.getDeploymentDetails(s.id), o]), p = n(u), g = r(p), _ = l(s.type, s.supportsMcp), y = p.type === "MODEL" || p.type === "AGENT" ? e(h ?? "", s.id, {
|
|
35
|
+
hasChatCompletion: p.data.capabilities?.hasChatCompletion,
|
|
36
|
+
hasResponsesApi: p.data.capabilities?.hasResponsesApi
|
|
56
37
|
}) : void 0;
|
|
57
38
|
return {
|
|
58
|
-
...
|
|
59
|
-
api:
|
|
60
|
-
limits: t(
|
|
61
|
-
credentials:
|
|
39
|
+
...g,
|
|
40
|
+
api: _ == null ? y ?? g.api : c(h ?? "", s.id, _),
|
|
41
|
+
limits: t(f, v),
|
|
42
|
+
credentials: p.type === "TOOLSET" ? i(s.id, p.data, m) : void 0
|
|
62
43
|
};
|
|
63
44
|
} catch {
|
|
64
45
|
return;
|
|
65
46
|
}
|
|
66
47
|
}, [
|
|
67
48
|
a,
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
T
|
|
49
|
+
m,
|
|
50
|
+
v,
|
|
51
|
+
h,
|
|
52
|
+
_,
|
|
53
|
+
y
|
|
74
54
|
]),
|
|
75
|
-
onLoadContentFile: b
|
|
76
|
-
|
|
77
|
-
if (t == null) return;
|
|
78
|
-
let n = m(e, t.path);
|
|
79
|
-
if (n == null) return;
|
|
80
|
-
let r = await p(await a.downloadSkillFile(t.bucket, t.path, n));
|
|
81
|
-
if (r != null) return n === "SKILL.md" ? v(r).body : r;
|
|
82
|
-
}, [a]),
|
|
83
|
-
onLoadSkillDetailsFile: b(async (e) => {
|
|
84
|
-
let t = O.current;
|
|
85
|
-
if (t == null) throw Error("No skill details are open");
|
|
86
|
-
let n = m(e, t.path);
|
|
87
|
-
if (n == null) throw Error("A folder cannot be previewed");
|
|
88
|
-
let r = await a.downloadSkillFile(t.bucket, t.path, n);
|
|
89
|
-
if (!r.ok) throw Object.assign(/* @__PURE__ */ Error(`File preview failed with status ${r.status}`), { status: r.status });
|
|
90
|
-
let i = await f(r);
|
|
91
|
-
if (i == null) throw Error("File exceeds the preview size limit");
|
|
92
|
-
let o = r.headers.get("content-type")?.split(";")[0].trim() || void 0;
|
|
93
|
-
return {
|
|
94
|
-
bytes: i,
|
|
95
|
-
mimeType: o === "application/octet-stream" ? void 0 : o
|
|
96
|
-
};
|
|
97
|
-
}, [a])
|
|
55
|
+
onLoadContentFile: b,
|
|
56
|
+
onLoadSkillDetailsFile: x
|
|
98
57
|
};
|
|
99
58
|
};
|
|
100
59
|
//#endregion
|
|
101
|
-
export {
|
|
60
|
+
export { m as useCatalogItemDetails };
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { SkillSource as e } from "../../skill/skill-types.js";
|
|
2
|
+
import { mapSkillToCatalogItem as t } from "../map-skill-to-catalog-item.js";
|
|
3
|
+
import { useSkillItemDetails as n } from "../useSkillItemDetails.js";
|
|
4
|
+
import { useEffect as r, useMemo as i, useState as a } from "react";
|
|
5
|
+
//#region src/catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.ts
|
|
6
|
+
var o = ({ api: o, skills: s, sharedWithMe: c, publicSkills: l, skillId: u, folderLabels: d, skillOverviewLabels: f, favoriteIds: p }) => {
|
|
7
|
+
let m = i(() => [
|
|
8
|
+
...s,
|
|
9
|
+
...c ?? [],
|
|
10
|
+
...l ?? []
|
|
11
|
+
], [
|
|
12
|
+
s,
|
|
13
|
+
c,
|
|
14
|
+
l
|
|
15
|
+
]), { onFetchSkillDetails: h, onLoadSkillDetailsFile: g } = n({
|
|
16
|
+
api: o,
|
|
17
|
+
skills: m,
|
|
18
|
+
skillOverviewLabels: f
|
|
19
|
+
}), _ = i(() => m.find((e) => e.url === u) ?? null, [m, u]), v = i(() => s.some((e) => e.url === u) ? e.Personal : c?.some((e) => e.url === u) ? e.SharedWithMe : e.Public, [
|
|
20
|
+
s,
|
|
21
|
+
c,
|
|
22
|
+
u
|
|
23
|
+
]), y = i(() => _ == null ? null : t(_, {
|
|
24
|
+
folderLabels: d,
|
|
25
|
+
source: v,
|
|
26
|
+
favoriteIds: p
|
|
27
|
+
}), [
|
|
28
|
+
_,
|
|
29
|
+
v,
|
|
30
|
+
d,
|
|
31
|
+
p
|
|
32
|
+
]), [b, x] = a(null), [S, C] = a(!1);
|
|
33
|
+
return r(() => {
|
|
34
|
+
if (y == null) return;
|
|
35
|
+
C(!0), x(null);
|
|
36
|
+
let e = !1;
|
|
37
|
+
return h(y).then((t) => {
|
|
38
|
+
e || (x(t ?? null), C(!1));
|
|
39
|
+
}), () => {
|
|
40
|
+
e = !0;
|
|
41
|
+
};
|
|
42
|
+
}, [y?.id]), {
|
|
43
|
+
detailsPanelItem: i(() => {
|
|
44
|
+
if (y == null) return null;
|
|
45
|
+
if (b == null) return y;
|
|
46
|
+
let { credentials: e, ...t } = b;
|
|
47
|
+
return {
|
|
48
|
+
...y,
|
|
49
|
+
details: t,
|
|
50
|
+
credentials: e ?? y.credentials
|
|
51
|
+
};
|
|
52
|
+
}, [y, b]),
|
|
53
|
+
isDetailsLoading: S,
|
|
54
|
+
isStarred: y != null && p.has(y.id),
|
|
55
|
+
onLoadSkillDetailsFile: g
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
//#endregion
|
|
59
|
+
export { o as useSkillDetailsPanelData };
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { SKILL_MANIFEST_FILE as e } from "../skill/skill.js";
|
|
2
|
+
import { parseSkillResourceUrl as t } from "../skill/skill-types.js";
|
|
3
|
+
import { buildSkillContentTree as n, buildSkillOverview as r, readSkillFileBytes as i, readSkillManifest as a, resolveSkillFileDownloadPath as o, resolveSkillManifestFileId as s } from "./map-skill-to-catalog-item.js";
|
|
4
|
+
import { parseSkillManifestDocument as c } from "../skill/skill-manifest.js";
|
|
5
|
+
import { useCallback as l, useRef as u } from "react";
|
|
6
|
+
//#region src/catalog/useSkillItemDetails.ts
|
|
7
|
+
var d = async (n, r) => {
|
|
8
|
+
let i = t(r);
|
|
9
|
+
if (i == null) return null;
|
|
10
|
+
try {
|
|
11
|
+
let t = await n.downloadSkillFile(i.bucket, i.path, e);
|
|
12
|
+
if (!t.ok) return null;
|
|
13
|
+
let r = await a(t);
|
|
14
|
+
return r == null ? null : c(r).description ?? null;
|
|
15
|
+
} catch {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
}, f = ({ api: d, skills: f, skillOverviewLabels: p }) => {
|
|
19
|
+
let m = u(null);
|
|
20
|
+
return {
|
|
21
|
+
onFetchSkillDetails: l(async (i) => {
|
|
22
|
+
let o = t(i.id);
|
|
23
|
+
if (o == null) return;
|
|
24
|
+
let { bucket: l, path: u } = o;
|
|
25
|
+
m.current = o;
|
|
26
|
+
let [h, g] = await Promise.allSettled([d.downloadSkillFile(l, u, e).then(a), d.listSkillFiles({
|
|
27
|
+
bucket: l,
|
|
28
|
+
path: u,
|
|
29
|
+
filePath: "",
|
|
30
|
+
recursive: !0
|
|
31
|
+
})]), _ = h.status === "fulfilled" && h.value != null ? c(h.value) : void 0, v = f.find((e) => e.url === i.id), y = g.status === "fulfilled" ? r(v, g.value.items, _?.about, p) : void 0, b = g.status === "fulfilled" ? n(g.value.items, u) : [], x = g.status === "fulfilled" ? s(g.value.items, u) : e;
|
|
32
|
+
if (!(_ == null && y == null)) return {
|
|
33
|
+
..._ == null ? {} : { promptContent: {
|
|
34
|
+
content: _.body,
|
|
35
|
+
..._.description == null ? {} : { description: _.description },
|
|
36
|
+
files: b,
|
|
37
|
+
selectedFileId: x
|
|
38
|
+
} },
|
|
39
|
+
...y == null ? {} : { overview: y }
|
|
40
|
+
};
|
|
41
|
+
}, [
|
|
42
|
+
d,
|
|
43
|
+
f,
|
|
44
|
+
p
|
|
45
|
+
]),
|
|
46
|
+
onLoadContentFile: l(async (e) => {
|
|
47
|
+
let t = m.current;
|
|
48
|
+
if (t == null) return;
|
|
49
|
+
let n = o(e, t.path);
|
|
50
|
+
if (n == null) return;
|
|
51
|
+
let r = await a(await d.downloadSkillFile(t.bucket, t.path, n));
|
|
52
|
+
if (r != null) return n === "SKILL.md" ? c(r).body : r;
|
|
53
|
+
}, [d]),
|
|
54
|
+
onLoadSkillDetailsFile: l(async (e) => {
|
|
55
|
+
let t = m.current;
|
|
56
|
+
if (t == null) throw Error("No skill details are open");
|
|
57
|
+
let n = o(e, t.path);
|
|
58
|
+
if (n == null) throw Error("A folder cannot be previewed");
|
|
59
|
+
let r = await d.downloadSkillFile(t.bucket, t.path, n);
|
|
60
|
+
if (!r.ok) throw Object.assign(/* @__PURE__ */ Error(`File preview failed with status ${r.status}`), { status: r.status });
|
|
61
|
+
let a = await i(r);
|
|
62
|
+
if (a == null) throw Error("File exceeds the preview size limit");
|
|
63
|
+
let s = r.headers.get("content-type")?.split(";")[0].trim() || void 0;
|
|
64
|
+
return {
|
|
65
|
+
bytes: a,
|
|
66
|
+
mimeType: s === "application/octet-stream" ? void 0 : s
|
|
67
|
+
};
|
|
68
|
+
}, [d])
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
//#endregion
|
|
72
|
+
export { d as fetchSkillDescription, f as useSkillItemDetails };
|
package/catalog.d.ts
CHANGED
|
@@ -139,7 +139,7 @@ export declare const buildSkillOverview: (skill: SkillMetadataItemDto | undefine
|
|
|
139
139
|
export declare const buildToolsetMcpUrl: (baseUrl: string, id: string) => string;
|
|
140
140
|
|
|
141
141
|
/** Injected API port for catalog item detail fetching. Mirrors exact server-api wrapper signatures. */
|
|
142
|
-
export declare interface CatalogDetailsApi {
|
|
142
|
+
export declare interface CatalogDetailsApi extends SkillDetailsApi {
|
|
143
143
|
/** Fetches deployment-level details for a model, agent, toolset, or application. */
|
|
144
144
|
getDeploymentDetails(deploymentId: string): Promise<DeploymentDetailsDto>;
|
|
145
145
|
/** Fetches rate-limit data for a deployment. */
|
|
@@ -148,17 +148,6 @@ export declare interface CatalogDetailsApi {
|
|
|
148
148
|
getPrompt(id: string): Promise<PromptResponseDto>;
|
|
149
149
|
/** Fetches a public (organisation) prompt by its bucket-relative path. */
|
|
150
150
|
getPublicPrompt(path: string): Promise<PromptResponseDto>;
|
|
151
|
-
/** Downloads a raw skill file, returning the raw fetch `Response`. */
|
|
152
|
-
downloadSkillFile(bucket: string, path: string, filePath: string, signal?: AbortSignal): Promise<Response>;
|
|
153
|
-
/** Lists files inside a skill package. */
|
|
154
|
-
listSkillFiles(params: {
|
|
155
|
-
bucket: string;
|
|
156
|
-
filePath: string;
|
|
157
|
-
path?: string;
|
|
158
|
-
token?: string;
|
|
159
|
-
limit?: number;
|
|
160
|
-
recursive?: boolean;
|
|
161
|
-
}, signal?: AbortSignal): Promise<SkillFileListResponseDto>;
|
|
162
151
|
}
|
|
163
152
|
|
|
164
153
|
/** Localized copy `useCatalogEditNavigation` needs for the Create menu and delete errors. */
|
|
@@ -349,6 +338,15 @@ export declare interface FavoritesPayload {
|
|
|
349
338
|
skills: string[];
|
|
350
339
|
}
|
|
351
340
|
|
|
341
|
+
/**
|
|
342
|
+
* Fetches a skill's manifest description for its listing tooltip. Returns
|
|
343
|
+
* `null` when the skill id is unparseable, the manifest is unreadable, or the
|
|
344
|
+
* request fails — callers treat all three as "no description", silently.
|
|
345
|
+
* Dropped once DIAL Core's skill listing carries `description` (planned
|
|
346
|
+
* upstream change), which also removes the per-skill download it performs.
|
|
347
|
+
*/
|
|
348
|
+
export declare const fetchSkillDescription: (api: Pick<SkillDetailsApi, "downloadSkillFile">, skillId: string) => Promise<string | null>;
|
|
349
|
+
|
|
352
350
|
/**
|
|
353
351
|
* Filters catalog items to those whose type is in `visibleTypes`.
|
|
354
352
|
* Call only when selector mode is active; otherwise pass through the original array.
|
|
@@ -736,6 +734,21 @@ declare interface SkillAboutDetails {
|
|
|
736
734
|
skillPrompt?: string;
|
|
737
735
|
}
|
|
738
736
|
|
|
737
|
+
/** Injected API port for skill detail fetching. Mirrors exact server-api wrapper signatures. */
|
|
738
|
+
export declare interface SkillDetailsApi {
|
|
739
|
+
/** Downloads a raw skill file, returning the raw fetch `Response`. */
|
|
740
|
+
downloadSkillFile(bucket: string, path: string, filePath: string, signal?: AbortSignal): Promise<Response>;
|
|
741
|
+
/** Lists files inside a skill package. */
|
|
742
|
+
listSkillFiles(params: {
|
|
743
|
+
bucket: string;
|
|
744
|
+
filePath: string;
|
|
745
|
+
path?: string;
|
|
746
|
+
token?: string;
|
|
747
|
+
limit?: number;
|
|
748
|
+
recursive?: boolean;
|
|
749
|
+
}, signal?: AbortSignal): Promise<SkillFileListResponseDto>;
|
|
750
|
+
}
|
|
751
|
+
|
|
739
752
|
/** A skill's parsed manifest details. */
|
|
740
753
|
export declare interface SkillEntityDetails {
|
|
741
754
|
about?: SkillAboutDetails;
|
|
@@ -882,7 +895,7 @@ export declare const toPublishRuleDto: (rule: PublicationRule) => PublishRuleDto
|
|
|
882
895
|
* item through the endpoint its type owns and refetching/notifying on
|
|
883
896
|
* completion, and building the Create dropdown's options.
|
|
884
897
|
*/
|
|
885
|
-
export declare const useCatalogEditNavigation: ({ deployments, isCustomAppsEnabled, isSchemaAppsEnabled, isHideCustomAppCreationEnabled, isToolsetsEnabled, isPromptsEnabled, quickAppSchemaId, urls, onNavigate, deletePrompt, deleteToolset, deleteSkill, deleteApplication, refetchPrompts, refetchToolsets, refetchSkills, refetchDeployments, onDeleteSuccess, labels, onNotify,
|
|
898
|
+
export declare const useCatalogEditNavigation: ({ deployments, isCustomAppsEnabled, isSchemaAppsEnabled, isHideCustomAppCreationEnabled, isToolsetsEnabled, isPromptsEnabled, quickAppSchemaId, urls, onNavigate, deletePrompt, deleteToolset, deleteSkill, deleteApplication, refetchPrompts, refetchToolsets, refetchSkills, refetchDeployments, onDeleteSuccess, labels, onNotify, onSkillUploadClick, }: UseCatalogEditNavigationParams) => UseCatalogEditNavigationResult;
|
|
886
899
|
|
|
887
900
|
/** Parameters accepted by {@link useCatalogEditNavigation}. */
|
|
888
901
|
export declare interface UseCatalogEditNavigationParams {
|
|
@@ -916,8 +929,8 @@ export declare interface UseCatalogEditNavigationParams {
|
|
|
916
929
|
labels: CatalogEditNavigationLabels;
|
|
917
930
|
/** Called to surface a host notification when a delete fails. */
|
|
918
931
|
onNotify: (notification: CatalogEditNavigationNotification) => void;
|
|
919
|
-
/**
|
|
920
|
-
|
|
932
|
+
/** Called when the Create menu's Skill → Upload option is picked. */
|
|
933
|
+
onSkillUploadClick: () => void;
|
|
921
934
|
}
|
|
922
935
|
|
|
923
936
|
/** Return value of {@link useCatalogEditNavigation}. */
|
|
@@ -1111,6 +1124,56 @@ export declare interface UsePublishFoldersResult {
|
|
|
1111
1124
|
hasPublishWriteAccess: (folderPath: string[]) => boolean;
|
|
1112
1125
|
}
|
|
1113
1126
|
|
|
1127
|
+
/**
|
|
1128
|
+
* Headless data pipeline behind a skill details side panel: resolves the
|
|
1129
|
+
* selected skill from the listings, maps it to a catalog item with its
|
|
1130
|
+
* ownership flags and folder prefix, fetches its details with cancellation,
|
|
1131
|
+
* and merges the fetch result into the item.
|
|
1132
|
+
*/
|
|
1133
|
+
export declare const useSkillDetailsPanelData: ({ api, skills, sharedWithMe, publicSkills, skillId, folderLabels, skillOverviewLabels, favoriteIds, }: UseSkillDetailsPanelDataOptions) => UseSkillDetailsPanelDataResult;
|
|
1134
|
+
|
|
1135
|
+
/** Options accepted by `useSkillDetailsPanelData`. */
|
|
1136
|
+
export declare interface UseSkillDetailsPanelDataOptions {
|
|
1137
|
+
/** Configured API adapter used for all network calls. */
|
|
1138
|
+
api: SkillDetailsApi;
|
|
1139
|
+
/** The user's own skills. */
|
|
1140
|
+
skills: SkillMetadataItemDto[];
|
|
1141
|
+
/** Skills shared with the user. */
|
|
1142
|
+
sharedWithMe?: SkillMetadataItemDto[];
|
|
1143
|
+
/** Public skills. */
|
|
1144
|
+
publicSkills?: SkillMetadataItemDto[];
|
|
1145
|
+
/**
|
|
1146
|
+
* Resource URL (`skills/{bucket}/{path}`) of the skill whose details are
|
|
1147
|
+
* shown; `null` when the panel is closed, which resolves no item.
|
|
1148
|
+
*/
|
|
1149
|
+
skillId: string | null;
|
|
1150
|
+
/** Personal/Shared/Public folder labels for the mapped item's folder path. */
|
|
1151
|
+
folderLabels: DeploymentFolderLabels;
|
|
1152
|
+
/** Labels for the skill overview section headers. */
|
|
1153
|
+
skillOverviewLabels: SkillOverviewLabels;
|
|
1154
|
+
/** Favorited resource ids, keyed by skill resource URL. */
|
|
1155
|
+
favoriteIds: ReadonlySet<string>;
|
|
1156
|
+
}
|
|
1157
|
+
|
|
1158
|
+
/** Returned by `useSkillDetailsPanelData`. */
|
|
1159
|
+
export declare interface UseSkillDetailsPanelDataResult {
|
|
1160
|
+
/**
|
|
1161
|
+
* The selected skill as a catalog item with its fetched details merged in;
|
|
1162
|
+
* `null` while no skill is selected or the skill is not in the listings.
|
|
1163
|
+
*/
|
|
1164
|
+
detailsPanelItem: CatalogItem | null;
|
|
1165
|
+
/** Whether the details fetch for the current item is in flight. */
|
|
1166
|
+
isDetailsLoading: boolean;
|
|
1167
|
+
/** Whether the resolved skill is currently favorited. */
|
|
1168
|
+
isStarred: boolean;
|
|
1169
|
+
/**
|
|
1170
|
+
* Downloads and returns preview bytes for a file inside the open skill's
|
|
1171
|
+
* package. Throws on HTTP errors, unparseable ids, and size-limit
|
|
1172
|
+
* violations.
|
|
1173
|
+
*/
|
|
1174
|
+
onLoadSkillDetailsFile(fileId: string): Promise<SkillFileContent>;
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1114
1177
|
/**
|
|
1115
1178
|
* Headless hook that manages the skill-file preview loading lifecycle.
|
|
1116
1179
|
* Starts a new load on mount and whenever `fileId` changes; classifies errors
|
|
@@ -1143,4 +1206,45 @@ export declare interface UseSkillFilePreviewResult {
|
|
|
1143
1206
|
error: SkillPreviewErrorKind | null;
|
|
1144
1207
|
}
|
|
1145
1208
|
|
|
1209
|
+
/**
|
|
1210
|
+
* Headless hook that encapsulates skill detail fetching: manifest download and
|
|
1211
|
+
* parse, package file listing, overview construction, and in-package file
|
|
1212
|
+
* loads. `useCatalogItemDetails` delegates its skill branch here; hosts that
|
|
1213
|
+
* only surface skill details consume this hook directly, without the
|
|
1214
|
+
* deployment and prompt ports the full catalog pipeline requires.
|
|
1215
|
+
*/
|
|
1216
|
+
export declare const useSkillItemDetails: ({ api, skills, skillOverviewLabels, }: UseSkillItemDetailsOptions) => UseSkillItemDetailsResult;
|
|
1217
|
+
|
|
1218
|
+
/** Options accepted by `useSkillItemDetails`. */
|
|
1219
|
+
export declare interface UseSkillItemDetailsOptions {
|
|
1220
|
+
/** Configured API adapter used for all network calls. */
|
|
1221
|
+
api: SkillDetailsApi;
|
|
1222
|
+
/**
|
|
1223
|
+
* Combined array of all skills visible to this user
|
|
1224
|
+
* (personal + shared + public) for overview metadata lookup.
|
|
1225
|
+
*/
|
|
1226
|
+
skills: SkillMetadataItemDto[];
|
|
1227
|
+
/** Labels for skill overview section headers. */
|
|
1228
|
+
skillOverviewLabels: SkillOverviewLabels;
|
|
1229
|
+
}
|
|
1230
|
+
|
|
1231
|
+
/** Returned callbacks from `useSkillItemDetails`. All callbacks are stable for stable inputs. */
|
|
1232
|
+
export declare interface UseSkillItemDetailsResult {
|
|
1233
|
+
/**
|
|
1234
|
+
* Fetches full detail data for a skill catalog item.
|
|
1235
|
+
* Returns `undefined` on failure (error handled by caller).
|
|
1236
|
+
*/
|
|
1237
|
+
onFetchSkillDetails(item: CatalogItem): Promise<CatalogItemDetailsFetchResult | undefined>;
|
|
1238
|
+
/**
|
|
1239
|
+
* Loads the text content of a file inside the currently open skill's package.
|
|
1240
|
+
* Returns `undefined` when the file cannot be read or is a directory.
|
|
1241
|
+
*/
|
|
1242
|
+
onLoadContentFile(fileId: string): Promise<string | undefined>;
|
|
1243
|
+
/**
|
|
1244
|
+
* Downloads and returns preview bytes for a file inside the currently open skill's package.
|
|
1245
|
+
* Throws on HTTP errors, unparseable ids, and size-limit violations.
|
|
1246
|
+
*/
|
|
1247
|
+
onLoadSkillDetailsFile(fileId: string): Promise<SkillFileContent>;
|
|
1248
|
+
}
|
|
1249
|
+
|
|
1146
1250
|
export { }
|
package/catalog.js
CHANGED
|
@@ -14,9 +14,11 @@ import { getPublicCatalogEntityFolderPath as R, isPublicCatalogEntityId as z, ma
|
|
|
14
14
|
import { deriveAvailableTabIds as U, deriveFavoriteItems as W, filterCatalogItemsBySelector as G, filterHiddenOwnedItems as K, reconcileFilterTopics as q } from "./catalog/catalog-derivations.js";
|
|
15
15
|
import { CatalogPrimaryActionType as J, resolveCatalogPrimaryAction as Y } from "./catalog/catalog-primary-action.js";
|
|
16
16
|
import { useCatalogEditNavigation as X } from "./catalog/useCatalogEditNavigation/useCatalogEditNavigation.js";
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
|
|
17
|
+
import { fetchSkillDescription as Z, useSkillItemDetails as Q } from "./catalog/useSkillItemDetails.js";
|
|
18
|
+
import { useCatalogItemDetails as $ } from "./catalog/useCatalogItemDetails.js";
|
|
19
|
+
import { useCatalogToolsetCredentials as ee } from "./catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js";
|
|
20
|
+
import { useSkillDetailsPanelData as te } from "./catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.js";
|
|
21
|
+
import { FavoriteEntityType as ne, useFavoriteEntitiesState as re } from "./catalog/useFavoriteEntitiesState/useFavoriteEntitiesState.js";
|
|
22
|
+
import { usePublishFolders as ie } from "./catalog/usePublishFolders/usePublishFolders.js";
|
|
23
|
+
import { SkillPreviewErrorKind as ae, useSkillFilePreview as oe } from "./skill/useSkillFilePreview.js";
|
|
24
|
+
export { s as AuthenticationType, J as CatalogPrimaryActionType, ne as FavoriteEntityType, N as McpResourceKind, b as PUBLIC_SKILL_BUCKET, x as SKILL_LISTING_MAX_PAGES, S as SKILL_LISTING_PAGE_SIZE, C as SKILL_MANIFEST_MAX_BYTES, ae as SkillPreviewErrorKind, w as SkillSource, P as buildApplicationMcpUrl, n as buildChatCompletionsUrl, F as buildConnectApi, r as buildDeploymentConnectApi, _ as buildPromptOverview, i as buildResponsesUrl, E as buildSkillContentTree, D as buildSkillOverview, I as buildToolsetMcpUrl, e as createPublishApiClient, U as deriveAvailableTabIds, W as deriveFavoriteItems, a as encodeDeploymentId, Z as fetchSkillDescription, G as filterCatalogItemsBySelector, K as filterHiddenOwnedItems, o as findDeploymentByIdOrReference, R as getPublicCatalogEntityFolderPath, v as isOrganisationPromptItem, z as isPublicCatalogEntityId, u as mapDeploymentDetailsDtoToEntityDetails, c as mapDeploymentLimitsDtoToCatalogLimits, l as mapDeploymentLimitsToInput, p as mapDeploymentToCatalogItem, m as mapDeploymentToolsetCredentials, d as mapEntityDetailsToCatalogDetails, y as mapPromptToCatalogItem, B as mapPublishConversationResultDto, V as mapPublishHistoryEntryDto, O as mapSkillToCatalogItem, f as mapToolsetCredentials, h as mapToolsetToCatalogItem, T as parseSkillResourceUrl, k as readSkillFileBytes, A as readSkillManifest, q as reconcileFilterTopics, Y as resolveCatalogPrimaryAction, g as resolveDeploymentFolder, L as resolveMcpResourceKind, j as resolveSkillFileDownloadPath, M as resolveSkillManifestFileId, H as toPublishEntityType, t as toPublishRuleDto, X as useCatalogEditNavigation, $ as useCatalogItemDetails, ee as useCatalogToolsetCredentials, re as useFavoriteEntitiesState, ie as usePublishFolders, te as useSkillDetailsPanelData, oe as useSkillFilePreview, Q as useSkillItemDetails };
|
package/index.d.ts
CHANGED
|
@@ -511,7 +511,7 @@ kind: McpDeploymentKind,
|
|
|
511
511
|
) => Promise<CallToolResult>;
|
|
512
512
|
|
|
513
513
|
/** Injected API port for catalog item detail fetching. Mirrors exact server-api wrapper signatures. */
|
|
514
|
-
export declare interface CatalogDetailsApi {
|
|
514
|
+
export declare interface CatalogDetailsApi extends SkillDetailsApi {
|
|
515
515
|
/** Fetches deployment-level details for a model, agent, toolset, or application. */
|
|
516
516
|
getDeploymentDetails(deploymentId: string): Promise<DeploymentDetailsDto>;
|
|
517
517
|
/** Fetches rate-limit data for a deployment. */
|
|
@@ -520,17 +520,6 @@ export declare interface CatalogDetailsApi {
|
|
|
520
520
|
getPrompt(id: string): Promise<PromptResponseDto>;
|
|
521
521
|
/** Fetches a public (organisation) prompt by its bucket-relative path. */
|
|
522
522
|
getPublicPrompt(path: string): Promise<PromptResponseDto>;
|
|
523
|
-
/** Downloads a raw skill file, returning the raw fetch `Response`. */
|
|
524
|
-
downloadSkillFile(bucket: string, path: string, filePath: string, signal?: AbortSignal): Promise<Response>;
|
|
525
|
-
/** Lists files inside a skill package. */
|
|
526
|
-
listSkillFiles(params: {
|
|
527
|
-
bucket: string;
|
|
528
|
-
filePath: string;
|
|
529
|
-
path?: string;
|
|
530
|
-
token?: string;
|
|
531
|
-
limit?: number;
|
|
532
|
-
recursive?: boolean;
|
|
533
|
-
}, signal?: AbortSignal): Promise<SkillFileListResponseDto>;
|
|
534
523
|
}
|
|
535
524
|
|
|
536
525
|
/** Localized copy `useCatalogEditNavigation` needs for the Create menu and delete errors. */
|
|
@@ -1355,6 +1344,15 @@ toolsetId: string,
|
|
|
1355
1344
|
resourceUri: string,
|
|
1356
1345
|
) => Promise<string>;
|
|
1357
1346
|
|
|
1347
|
+
/**
|
|
1348
|
+
* Fetches a skill's manifest description for its listing tooltip. Returns
|
|
1349
|
+
* `null` when the skill id is unparseable, the manifest is unreadable, or the
|
|
1350
|
+
* request fails — callers treat all three as "no description", silently.
|
|
1351
|
+
* Dropped once DIAL Core's skill listing carries `description` (planned
|
|
1352
|
+
* upstream change), which also removes the per-skill download it performs.
|
|
1353
|
+
*/
|
|
1354
|
+
export declare const fetchSkillDescription: (api: Pick<SkillDetailsApi, "downloadSkillFile">, skillId: string) => Promise<string | null>;
|
|
1355
|
+
|
|
1358
1356
|
/**
|
|
1359
1357
|
* Structured toast event emitted by file-manager hooks. `reason` carries a
|
|
1360
1358
|
* library-owned identifier the host translates; `message` is an optional
|
|
@@ -2982,6 +2980,21 @@ export declare interface SkillAboutDetails {
|
|
|
2982
2980
|
skillPrompt?: string;
|
|
2983
2981
|
}
|
|
2984
2982
|
|
|
2983
|
+
/** Injected API port for skill detail fetching. Mirrors exact server-api wrapper signatures. */
|
|
2984
|
+
export declare interface SkillDetailsApi {
|
|
2985
|
+
/** Downloads a raw skill file, returning the raw fetch `Response`. */
|
|
2986
|
+
downloadSkillFile(bucket: string, path: string, filePath: string, signal?: AbortSignal): Promise<Response>;
|
|
2987
|
+
/** Lists files inside a skill package. */
|
|
2988
|
+
listSkillFiles(params: {
|
|
2989
|
+
bucket: string;
|
|
2990
|
+
filePath: string;
|
|
2991
|
+
path?: string;
|
|
2992
|
+
token?: string;
|
|
2993
|
+
limit?: number;
|
|
2994
|
+
recursive?: boolean;
|
|
2995
|
+
}, signal?: AbortSignal): Promise<SkillFileListResponseDto>;
|
|
2996
|
+
}
|
|
2997
|
+
|
|
2985
2998
|
/** Already-configured DIAL Core download operations `useSkillEditorLoad` needs. */
|
|
2986
2999
|
export declare interface SkillEditorLoadClient {
|
|
2987
3000
|
/** Downloads the whole-skill ZIP archive. */
|
|
@@ -3743,7 +3756,7 @@ export declare interface UseAttachmentValidationResult {
|
|
|
3743
3756
|
* item through the endpoint its type owns and refetching/notifying on
|
|
3744
3757
|
* completion, and building the Create dropdown's options.
|
|
3745
3758
|
*/
|
|
3746
|
-
export declare const useCatalogEditNavigation: ({ deployments, isCustomAppsEnabled, isSchemaAppsEnabled, isHideCustomAppCreationEnabled, isToolsetsEnabled, isPromptsEnabled, quickAppSchemaId, urls, onNavigate, deletePrompt, deleteToolset, deleteSkill, deleteApplication, refetchPrompts, refetchToolsets, refetchSkills, refetchDeployments, onDeleteSuccess, labels, onNotify,
|
|
3759
|
+
export declare const useCatalogEditNavigation: ({ deployments, isCustomAppsEnabled, isSchemaAppsEnabled, isHideCustomAppCreationEnabled, isToolsetsEnabled, isPromptsEnabled, quickAppSchemaId, urls, onNavigate, deletePrompt, deleteToolset, deleteSkill, deleteApplication, refetchPrompts, refetchToolsets, refetchSkills, refetchDeployments, onDeleteSuccess, labels, onNotify, onSkillUploadClick, }: UseCatalogEditNavigationParams) => UseCatalogEditNavigationResult;
|
|
3747
3760
|
|
|
3748
3761
|
/** Parameters accepted by {@link useCatalogEditNavigation}. */
|
|
3749
3762
|
export declare interface UseCatalogEditNavigationParams {
|
|
@@ -3777,8 +3790,8 @@ export declare interface UseCatalogEditNavigationParams {
|
|
|
3777
3790
|
labels: CatalogEditNavigationLabels;
|
|
3778
3791
|
/** Called to surface a host notification when a delete fails. */
|
|
3779
3792
|
onNotify: (notification: CatalogEditNavigationNotification) => void;
|
|
3780
|
-
/**
|
|
3781
|
-
|
|
3793
|
+
/** Called when the Create menu's Skill → Upload option is picked. */
|
|
3794
|
+
onSkillUploadClick: () => void;
|
|
3782
3795
|
}
|
|
3783
3796
|
|
|
3784
3797
|
/** Return value of {@link useCatalogEditNavigation}. */
|
|
@@ -5039,6 +5052,56 @@ export declare interface UseShareRecipientsCountResult {
|
|
|
5039
5052
|
invalidateRecipientsCount: (itemId: string) => void;
|
|
5040
5053
|
}
|
|
5041
5054
|
|
|
5055
|
+
/**
|
|
5056
|
+
* Headless data pipeline behind a skill details side panel: resolves the
|
|
5057
|
+
* selected skill from the listings, maps it to a catalog item with its
|
|
5058
|
+
* ownership flags and folder prefix, fetches its details with cancellation,
|
|
5059
|
+
* and merges the fetch result into the item.
|
|
5060
|
+
*/
|
|
5061
|
+
export declare const useSkillDetailsPanelData: ({ api, skills, sharedWithMe, publicSkills, skillId, folderLabels, skillOverviewLabels, favoriteIds, }: UseSkillDetailsPanelDataOptions) => UseSkillDetailsPanelDataResult;
|
|
5062
|
+
|
|
5063
|
+
/** Options accepted by `useSkillDetailsPanelData`. */
|
|
5064
|
+
export declare interface UseSkillDetailsPanelDataOptions {
|
|
5065
|
+
/** Configured API adapter used for all network calls. */
|
|
5066
|
+
api: SkillDetailsApi;
|
|
5067
|
+
/** The user's own skills. */
|
|
5068
|
+
skills: SkillMetadataItemDto[];
|
|
5069
|
+
/** Skills shared with the user. */
|
|
5070
|
+
sharedWithMe?: SkillMetadataItemDto[];
|
|
5071
|
+
/** Public skills. */
|
|
5072
|
+
publicSkills?: SkillMetadataItemDto[];
|
|
5073
|
+
/**
|
|
5074
|
+
* Resource URL (`skills/{bucket}/{path}`) of the skill whose details are
|
|
5075
|
+
* shown; `null` when the panel is closed, which resolves no item.
|
|
5076
|
+
*/
|
|
5077
|
+
skillId: string | null;
|
|
5078
|
+
/** Personal/Shared/Public folder labels for the mapped item's folder path. */
|
|
5079
|
+
folderLabels: DeploymentFolderLabels;
|
|
5080
|
+
/** Labels for the skill overview section headers. */
|
|
5081
|
+
skillOverviewLabels: SkillOverviewLabels;
|
|
5082
|
+
/** Favorited resource ids, keyed by skill resource URL. */
|
|
5083
|
+
favoriteIds: ReadonlySet<string>;
|
|
5084
|
+
}
|
|
5085
|
+
|
|
5086
|
+
/** Returned by `useSkillDetailsPanelData`. */
|
|
5087
|
+
export declare interface UseSkillDetailsPanelDataResult {
|
|
5088
|
+
/**
|
|
5089
|
+
* The selected skill as a catalog item with its fetched details merged in;
|
|
5090
|
+
* `null` while no skill is selected or the skill is not in the listings.
|
|
5091
|
+
*/
|
|
5092
|
+
detailsPanelItem: CatalogItem | null;
|
|
5093
|
+
/** Whether the details fetch for the current item is in flight. */
|
|
5094
|
+
isDetailsLoading: boolean;
|
|
5095
|
+
/** Whether the resolved skill is currently favorited. */
|
|
5096
|
+
isStarred: boolean;
|
|
5097
|
+
/**
|
|
5098
|
+
* Downloads and returns preview bytes for a file inside the open skill's
|
|
5099
|
+
* package. Throws on HTTP errors, unparseable ids, and size-limit
|
|
5100
|
+
* violations.
|
|
5101
|
+
*/
|
|
5102
|
+
onLoadSkillDetailsFile(fileId: string): Promise<SkillFileContent>;
|
|
5103
|
+
}
|
|
5104
|
+
|
|
5042
5105
|
/**
|
|
5043
5106
|
* Owns the edit-mode skill download/unpack/parse flow: the in-memory
|
|
5044
5107
|
* supporting-file map, the loaded manifest values and frontmatter, the
|
|
@@ -5214,6 +5277,47 @@ export declare interface UseSkillFilePreviewResult {
|
|
|
5214
5277
|
error: SkillPreviewErrorKind | null;
|
|
5215
5278
|
}
|
|
5216
5279
|
|
|
5280
|
+
/**
|
|
5281
|
+
* Headless hook that encapsulates skill detail fetching: manifest download and
|
|
5282
|
+
* parse, package file listing, overview construction, and in-package file
|
|
5283
|
+
* loads. `useCatalogItemDetails` delegates its skill branch here; hosts that
|
|
5284
|
+
* only surface skill details consume this hook directly, without the
|
|
5285
|
+
* deployment and prompt ports the full catalog pipeline requires.
|
|
5286
|
+
*/
|
|
5287
|
+
export declare const useSkillItemDetails: ({ api, skills, skillOverviewLabels, }: UseSkillItemDetailsOptions) => UseSkillItemDetailsResult;
|
|
5288
|
+
|
|
5289
|
+
/** Options accepted by `useSkillItemDetails`. */
|
|
5290
|
+
export declare interface UseSkillItemDetailsOptions {
|
|
5291
|
+
/** Configured API adapter used for all network calls. */
|
|
5292
|
+
api: SkillDetailsApi;
|
|
5293
|
+
/**
|
|
5294
|
+
* Combined array of all skills visible to this user
|
|
5295
|
+
* (personal + shared + public) for overview metadata lookup.
|
|
5296
|
+
*/
|
|
5297
|
+
skills: SkillMetadataItemDto[];
|
|
5298
|
+
/** Labels for skill overview section headers. */
|
|
5299
|
+
skillOverviewLabels: SkillOverviewLabels;
|
|
5300
|
+
}
|
|
5301
|
+
|
|
5302
|
+
/** Returned callbacks from `useSkillItemDetails`. All callbacks are stable for stable inputs. */
|
|
5303
|
+
export declare interface UseSkillItemDetailsResult {
|
|
5304
|
+
/**
|
|
5305
|
+
* Fetches full detail data for a skill catalog item.
|
|
5306
|
+
* Returns `undefined` on failure (error handled by caller).
|
|
5307
|
+
*/
|
|
5308
|
+
onFetchSkillDetails(item: CatalogItem): Promise<CatalogItemDetailsFetchResult | undefined>;
|
|
5309
|
+
/**
|
|
5310
|
+
* Loads the text content of a file inside the currently open skill's package.
|
|
5311
|
+
* Returns `undefined` when the file cannot be read or is a directory.
|
|
5312
|
+
*/
|
|
5313
|
+
onLoadContentFile(fileId: string): Promise<string | undefined>;
|
|
5314
|
+
/**
|
|
5315
|
+
* Downloads and returns preview bytes for a file inside the currently open skill's package.
|
|
5316
|
+
* Throws on HTTP errors, unparseable ids, and size-limit violations.
|
|
5317
|
+
*/
|
|
5318
|
+
onLoadSkillDetailsFile(fileId: string): Promise<SkillFileContent>;
|
|
5319
|
+
}
|
|
5320
|
+
|
|
5217
5321
|
/**
|
|
5218
5322
|
* Fetches all skill namespaces with a gated single request: clears state
|
|
5219
5323
|
* immediately when `enabled` is false, defers the fetch until `ready` is true,
|
package/index.js
CHANGED
|
@@ -32,103 +32,105 @@ import { deriveAvailableTabIds as Ke, deriveFavoriteItems as qe, filterCatalogIt
|
|
|
32
32
|
import { CatalogPrimaryActionType as Ze, resolveCatalogPrimaryAction as Qe } from "./catalog/catalog-primary-action.js";
|
|
33
33
|
import { useCatalogEditNavigation as $e } from "./catalog/useCatalogEditNavigation/useCatalogEditNavigation.js";
|
|
34
34
|
import { parseSkillManifestDocument as et } from "./skill/skill-manifest.js";
|
|
35
|
-
import {
|
|
36
|
-
import {
|
|
37
|
-
import {
|
|
38
|
-
import {
|
|
39
|
-
import {
|
|
40
|
-
import {
|
|
41
|
-
import {
|
|
42
|
-
import {
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
45
|
-
import {
|
|
46
|
-
import {
|
|
47
|
-
import {
|
|
48
|
-
import {
|
|
49
|
-
import {
|
|
50
|
-
import {
|
|
51
|
-
import {
|
|
52
|
-
import {
|
|
53
|
-
import {
|
|
54
|
-
import {
|
|
55
|
-
import {
|
|
56
|
-
import {
|
|
57
|
-
import {
|
|
58
|
-
import {
|
|
59
|
-
import {
|
|
60
|
-
import {
|
|
61
|
-
import {
|
|
62
|
-
import {
|
|
63
|
-
import {
|
|
64
|
-
import {
|
|
65
|
-
import {
|
|
66
|
-
import {
|
|
67
|
-
import {
|
|
68
|
-
import {
|
|
69
|
-
import {
|
|
70
|
-
import {
|
|
71
|
-
import {
|
|
72
|
-
import {
|
|
73
|
-
import {
|
|
74
|
-
import {
|
|
75
|
-
import {
|
|
76
|
-
import {
|
|
77
|
-
import {
|
|
78
|
-
import {
|
|
79
|
-
import {
|
|
80
|
-
import {
|
|
81
|
-
import {
|
|
82
|
-
import {
|
|
83
|
-
import {
|
|
84
|
-
import {
|
|
85
|
-
import {
|
|
86
|
-
import {
|
|
87
|
-
import {
|
|
88
|
-
import {
|
|
89
|
-
import {
|
|
90
|
-
import {
|
|
91
|
-
import {
|
|
92
|
-
import {
|
|
93
|
-
import {
|
|
94
|
-
import {
|
|
95
|
-
import {
|
|
96
|
-
import {
|
|
97
|
-
import {
|
|
98
|
-
import {
|
|
99
|
-
import {
|
|
100
|
-
import {
|
|
101
|
-
import {
|
|
102
|
-
import {
|
|
103
|
-
import {
|
|
104
|
-
import {
|
|
105
|
-
import {
|
|
106
|
-
import {
|
|
107
|
-
import {
|
|
108
|
-
import {
|
|
109
|
-
import {
|
|
110
|
-
import {
|
|
111
|
-
import {
|
|
112
|
-
import {
|
|
113
|
-
import {
|
|
114
|
-
import {
|
|
115
|
-
import {
|
|
116
|
-
import {
|
|
117
|
-
import {
|
|
118
|
-
import {
|
|
119
|
-
import {
|
|
120
|
-
import {
|
|
121
|
-
import {
|
|
122
|
-
import {
|
|
123
|
-
import {
|
|
124
|
-
import {
|
|
125
|
-
import {
|
|
126
|
-
import {
|
|
127
|
-
import {
|
|
128
|
-
import {
|
|
129
|
-
import {
|
|
130
|
-
import {
|
|
131
|
-
import {
|
|
132
|
-
import {
|
|
133
|
-
import {
|
|
134
|
-
|
|
35
|
+
import { fetchSkillDescription as tt, useSkillItemDetails as nt } from "./catalog/useSkillItemDetails.js";
|
|
36
|
+
import { useCatalogItemDetails as rt } from "./catalog/useCatalogItemDetails.js";
|
|
37
|
+
import { OAuthResourceKind as it, TOOLSET_REDIRECT_STATE_KEY as at, ToolsetAuthStatus as ot, ToolsetAuthTypes as st, ToolsetCredentialsLevel as ct, ToolsetOAuthCallbackQuery as lt, ToolsetOAuthChannelControlType as ut, ToolsetOAuthFailureReason as dt, ToolsetOAuthInitiationResultType as ft, ToolsetOAuthResultType as pt, WithLogin as mt } from "./oauth/types.js";
|
|
38
|
+
import { emitToolsetLoginSuccess as ht, subscribeToolsetLoginSuccess as gt } from "./shared/toolset-login-events.js";
|
|
39
|
+
import { getToolsetOAuthChannelName as _t, waitForToolsetOAuthResult as vt } from "./oauth/handshake.js";
|
|
40
|
+
import { buildToolsetAuthorizeUrl as yt, getToolsetRedirectUri as bt } from "./oauth/authorize-url.js";
|
|
41
|
+
import { initiateOAuthLogin as xt, navigateToolsetOAuthPopup as St, openToolsetOAuthPopup as Ct } from "./oauth/popup.js";
|
|
42
|
+
import { ToolsetLoginOutcomeType as wt, useToolsetLogin as Tt } from "./oauth/useToolsetLogin/useToolsetLogin.js";
|
|
43
|
+
import { useCatalogToolsetCredentials as Et } from "./catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js";
|
|
44
|
+
import { useSkillDetailsPanelData as Dt } from "./catalog/useSkillDetailsPanelData/useSkillDetailsPanelData.js";
|
|
45
|
+
import { FavoriteEntityType as Ot, useFavoriteEntitiesState as kt } from "./catalog/useFavoriteEntitiesState/useFavoriteEntitiesState.js";
|
|
46
|
+
import { usePublishFolders as At } from "./catalog/usePublishFolders/usePublishFolders.js";
|
|
47
|
+
import { buildAnnouncementSignature as jt, hasAnnouncementContent as Mt, hasStructuredAnnouncement as Nt, sanitizeAnnouncementHtml as Pt, sanitizeAnnouncementMessageHtml as Ft } from "./conversation/announcement-message.js";
|
|
48
|
+
import { createChatStreamApi as It } from "./conversation/create-chat-stream-api.js";
|
|
49
|
+
import { shouldWatchForDisplayNameUpdate as Lt } from "./conversation/display-name-watch.js";
|
|
50
|
+
import { formatAppVersion as Rt, sanitizeFooterHtml as zt } from "./conversation/footer-message.js";
|
|
51
|
+
import { getModelIdFromConversationId as Bt } from "./conversation/get-model-id-from-conversation-id.js";
|
|
52
|
+
import { getTimeOfDayGreeting as Vt } from "./conversation/greeting.js";
|
|
53
|
+
import { createDeploymentChangedMessage as Ht } from "./conversation/message-factory.js";
|
|
54
|
+
import { getLastDeploymentId as Ut, getLastUserMessageToolConfiguration as Wt, isMessageStreaming as Gt, messageHasStages as Kt, normalizeResponseFormat as qt } from "./conversation/message-utils.js";
|
|
55
|
+
import { toOverlayMessages as Jt } from "./conversation/overlay-messages.js";
|
|
56
|
+
import { getQuickAppConversationStarters as Yt } from "./conversation/quick-app-conversation-starters.js";
|
|
57
|
+
import { getStarterPopulateText as Xt, getStartersFromSchema as Zt } from "./conversation/starter-option.js";
|
|
58
|
+
import { useOAuthCallbackCompletion as Qt } from "./oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.js";
|
|
59
|
+
import { buildPromptExportEnvelope as $t, buildPromptExportFileName as en, serializePromptExport as tn } from "./prompt/export-prompt.js";
|
|
60
|
+
import { PROMPT_CONTENT_MAX_LENGTH as nn, PROMPT_COUNTER_ANNOUNCE_THRESHOLD as rn, PROMPT_DESCRIPTION_MAX_LENGTH as an, PROMPT_NAME_MAX_LENGTH as on, PromptFieldError as sn, buildPromptPath as cn, getRemainingCharacters as ln, validatePromptContent as un, validatePromptDescription as dn, validatePromptName as fn } from "./prompt/prompt.js";
|
|
61
|
+
import { usePromptsState as pn } from "./prompt/usePromptsState/usePromptsState.js";
|
|
62
|
+
import { UnsupportedTriggerReason as mn } from "./scheduled-task/scheduled-task-mapping.js";
|
|
63
|
+
import { apSchedulerDayToJsDay as hn, jsDayToApSchedulerDay as gn } from "./shared/cron-weekday.js";
|
|
64
|
+
import { mapFormValuesToCreateBody as _n, mapFormValuesToUpdateBody as vn, mapScheduledTaskDtoToFormValues as yn } from "./scheduled-task/scheduled-task-trigger.js";
|
|
65
|
+
import { validateSkillFileBatch as bn } from "./skill/skill-file-batch-validation.js";
|
|
66
|
+
import { skillFileToAttachment as xn } from "./skill/skill-file-preview.js";
|
|
67
|
+
import { SkillEditorLoadState as Sn, useSkillEditorLoad as Cn } from "./skill/useSkillEditorLoad.js";
|
|
68
|
+
import { useSkillEditorSubmit as wn } from "./skill/useSkillEditorSubmit.js";
|
|
69
|
+
import { useSkillFileActions as Tn } from "./skill/useSkillFileActions.js";
|
|
70
|
+
import { SkillPreviewErrorKind as En, useSkillFilePreview as Dn } from "./skill/useSkillFilePreview.js";
|
|
71
|
+
import { useSkillsState as On } from "./skill/useSkillsState/useSkillsState.js";
|
|
72
|
+
import { RecipientsCountStatus as kn, useShareRecipientsCount as An } from "./useShareRecipientsCount/useShareRecipientsCount.js";
|
|
73
|
+
import { deriveConversationRowActionState as jn } from "./conversation/deriveConversationRowActionState/deriveConversationRowActionState.js";
|
|
74
|
+
import { useActiveConversationSync as Mn } from "./conversation/useActiveConversationSync/useActiveConversationSync.js";
|
|
75
|
+
import { useAsyncConfirmDialog as Nn } from "./conversation/useAsyncConfirmDialog/useAsyncConfirmDialog.js";
|
|
76
|
+
import { useConversationLookupMaps as Pn } from "./conversation/useConversationLookupMaps/useConversationLookupMaps.js";
|
|
77
|
+
import { getConversationSource as Fn, useConversationPanelItems as In } from "./conversation/useConversationPanelItems/useConversationPanelItems.js";
|
|
78
|
+
import { useImportFilePicker as Ln } from "./conversation/useImportFilePicker/useImportFilePicker.js";
|
|
79
|
+
import { useAttachmentUpload as Rn } from "./conversation/useAttachmentUpload/useAttachmentUpload.js";
|
|
80
|
+
import { AudioTranscriptionError as zn, AudioTranscriptionErrorReason as Bn } from "./conversation/useTranscribeAudio/audio-transcription-error.js";
|
|
81
|
+
import { useTranscribeAudio as Vn } from "./conversation/useTranscribeAudio/useTranscribeAudio.js";
|
|
82
|
+
import { DEFAULT_MAX_ARCHIVE_BYTES as Hn, useConversationExport as Un } from "./conversation/useConversationExport/useConversationExport.js";
|
|
83
|
+
import { attachmentToDto as Wn, attachmentsToDtos as Gn } from "./conversation/useConversationHandlers/attachment-to-dto.js";
|
|
84
|
+
import { createMessagePair as Kn } from "./conversation/useConversationHandlers/message-factory.js";
|
|
85
|
+
import { hasActiveToolConfig as qn, isMessageChanged as Jn } from "./conversation/useConversationHandlers/message-utils.js";
|
|
86
|
+
import { getStarterConversationText as Yn, getStarterSubmitText as Xn } from "./conversation/useConversationHandlers/starter-option.js";
|
|
87
|
+
import { getConversationPath as Zn } from "./conversation/useConversationStream/conversation-path.js";
|
|
88
|
+
import { useConversationHandlers as Qn } from "./conversation/useConversationHandlers/useConversationHandlers.js";
|
|
89
|
+
import { useConversationImport as $n } from "./conversation/useConversationImport/useConversationImport.js";
|
|
90
|
+
import { useConversationScroll as er } from "./conversation/useConversationScroll/useConversationScroll.js";
|
|
91
|
+
import { isAwaitingGenerationResume as tr } from "./conversation/useConversationStream/generation-resume.js";
|
|
92
|
+
import { useConversationStream as nr } from "./conversation/useConversationStream/useConversationStream.js";
|
|
93
|
+
import { useConversationSources as rr } from "./conversation-sources/useConversationSources/useConversationSources.js";
|
|
94
|
+
import { DialFilesApiUploadMode as ir } from "./files/dial-files-api.js";
|
|
95
|
+
import { FileManagerNotificationReason as ar, FileNameValidationErrorReason as or, FileOperationKind as sr } from "./files/dial-file-manager.types.js";
|
|
96
|
+
import { COLUMNS_WITHOUT_AUTHOR as cr, COLUMNS_WITH_AUTHOR as lr, CORE_PERMISSION_MAP as ur, DATE_OPTIONS as dr, PATH_SEPARATOR_REGEXP as fr, RESERVED_MARKER_NAME as pr, UPLOAD_CONCURRENCY as mr } from "./files/dial-file-manager.model.js";
|
|
97
|
+
import { DialFileManagerActionProfile as hr, DialFileManagerVariant as gr, deriveActionProfile as _r } from "./files/file-manager-variant.js";
|
|
98
|
+
import { buildSharedItemVirtualPath as vr, dialCorePathToRelative as yr, findDialFileByPath as br, findFolderByVirtualPath as xr, formatOperationFolderName as Sr, getVirtualPathName as Cr, hasDialFileWritePermission as wr, hasForbiddenNameSymbols as Tr, isCopyMoveDuplicateAllowed as Er, isShareActionsAllowed as Dr, normalizeVirtualPath as Or, parseNewFolderVirtualPath as kr, resolveOwnerCoords as Ar } from "./files/dial-file-manager-path.util.js";
|
|
99
|
+
import { getParentFolderPath as jr, resolveDialFileApiPath as Mr, virtualPathToApiPath as Nr } from "./files/resolve-dial-file-api-path.js";
|
|
100
|
+
import { prepareCopyItems as Pr, prepareMoveRenameItems as Fr } from "./files/dial-file-manager-copy-move.util.js";
|
|
101
|
+
import { buildFromCache as Ir, fetchByTab as Lr, fetchForSearch as Rr, findFirstSuccessfulCopyMoveItem as zr, mapCorePermissions as Br, mapFileMetadataToDialFile as Vr, mapSearchItem as Hr, mergeCreatedFolderIntoCache as Ur, updateEntry as Wr } from "./files/dial-file-manager-mapping.util.js";
|
|
102
|
+
import { createFilesApiClient as Gr } from "./files/create-files-api.js";
|
|
103
|
+
import { createUploadFileWithProgress as Kr } from "./files/create-upload-file-with-progress.js";
|
|
104
|
+
import { openAnnotationAttachment as qr } from "./files/annotation.js";
|
|
105
|
+
import { annotationToPdfCanvasContent as Jr, clearAttachmentCache as Yr, hasAttachmentTextSource as Xr, referenceAttachmentToPdfCanvasContent as Zr, resolveCodeCanvasContent as Qr, resolveHtmlCanvasContent as $r, resolveImageCanvasContent as ei, resolveJsonCanvasContent as ti, resolveMarkdownCanvasContent as ni, resolveOoxmlCanvasContent as ri, resolvePdfCanvasContent as ii, resolveTextCanvasContent as ai, resolveVisualizerCanvasContent as oi } from "./files/attachment-canvas.js";
|
|
106
|
+
import { getUrlFileName as si, isExternalSourcePreviewable as ci, resolveExternalSourceContentType as li } from "./files/source-content.js";
|
|
107
|
+
import { annotationToDisplayAttachment as ui, attachmentDtoToDisplayAttachment as di, attachmentDtosToDisplayAttachments as fi } from "./files/attachment-dto-to-display.js";
|
|
108
|
+
import { dialFileToAttachment as pi, dialFilesToAttachments as mi, dialFolderPathToAttachment as hi } from "./files/dial-file-to-attachment.js";
|
|
109
|
+
import { DownloadDestinationType as gi } from "./files/download-destination.js";
|
|
110
|
+
import { prepareDownloadDestination as _i } from "./files/prepare-download-destination.js";
|
|
111
|
+
import { sanitizeFileName as vi, splitFileNameExtension as yi, trimFileNameToByteLimit as bi } from "./files/file-name.js";
|
|
112
|
+
import { useDialFileListing as xi } from "./files/useDialFileListing/useDialFileListing.js";
|
|
113
|
+
import { useDialFileMetadata as Si } from "./files/useDialFileMetadata/useDialFileMetadata.js";
|
|
114
|
+
import { useDialFileMutations as Ci } from "./files/useDialFileMutations/useDialFileMutations.js";
|
|
115
|
+
import { useDialFileSharing as wi } from "./files/useDialFileSharing/useDialFileSharing.js";
|
|
116
|
+
import { useDialFileUploadBatch as Ti } from "./files/useDialFileUploadBatch/useDialFileUploadBatch.js";
|
|
117
|
+
import { useDialFileManager as Ei } from "./files/useDialFileManager/useDialFileManager.js";
|
|
118
|
+
import { useDialFileManagerTabConfig as Di } from "./files/useDialFileManagerTabConfig/useDialFileManagerTabConfig.js";
|
|
119
|
+
import { isCustomAppSchema as Oi, isQuickAppSchema as ki } from "./shared/application-schema.js";
|
|
120
|
+
import { getBrowserTimezone as Ai } from "./shared/browser-timezone.js";
|
|
121
|
+
import { isValidAbsoluteUrl as ji, isValidFeaturesData as Mi, parseFeaturesData as Ni } from "./shared/custom-apps.js";
|
|
122
|
+
import { buildExternalServiceScopeId as Pi, getExternalServiceFallbackName as Fi, parseExternalServiceUrl as Ii } from "./shared/external-services.js";
|
|
123
|
+
import { useChatSettingsFormConfig as Li } from "./useChatSettingsFormConfig/useChatSettingsFormConfig.js";
|
|
124
|
+
import { usePageFileDrag as Ri } from "./usePageFileDrag/usePageFileDrag.js";
|
|
125
|
+
import { useViewportWidth as zi } from "./useViewportWidth/useViewportWidth.js";
|
|
126
|
+
import { usePanelMaxWidth as Bi } from "./usePanelMaxWidth/usePanelMaxWidth.js";
|
|
127
|
+
import { useShareLink as Vi } from "./useShareLink/useShareLink.js";
|
|
128
|
+
import { useToolsMenu as Hi } from "./useToolsMenu/useToolsMenu.js";
|
|
129
|
+
import { useUsageData as Ui } from "./usage/useUsageData/useUsageData.js";
|
|
130
|
+
import { McpAppResourceFetchError as Wi, createMcpAppsApiClient as Gi } from "./mcp-apps/mcp-apps-api-client.js";
|
|
131
|
+
import { useMcpAppTools as Ki } from "./mcp-apps/useMcpAppTools/useMcpAppTools.js";
|
|
132
|
+
import { useMcpAppHostContext as qi } from "./mcp-apps/useMcpAppHostContext/useMcpAppHostContext.js";
|
|
133
|
+
import { useMcpAppHostAdapter as Ji } from "./mcp-apps/useMcpAppHostAdapter/useMcpAppHostAdapter.js";
|
|
134
|
+
import { useOpenMcpAppCanvas as Yi } from "./mcp-apps/useOpenMcpAppCanvas/useOpenMcpAppCanvas.js";
|
|
135
|
+
import { useGridEditingScroll as Xi } from "@epam/ai-dial-chat-shared";
|
|
136
|
+
export { b as AttachmentValidationErrorReason, zn as AudioTranscriptionError, Bn as AudioTranscriptionErrorReason, L as AuthenticationType, cr as COLUMNS_WITHOUT_AUTHOR, lr as COLUMNS_WITH_AUTHOR, ur as CORE_PERMISSION_MAP, Ze as CatalogPrimaryActionType, w as ConversationExportMode, T as ConversationTransferErrorCode, E as ConversationTransferWarningCode, dr as DATE_OPTIONS, Hn as DEFAULT_MAX_ARCHIVE_BYTES, hr as DialFileManagerActionProfile, gr as DialFileManagerVariant, ir as DialFilesApiUploadMode, gi as DownloadDestinationType, O as EXPORT_APP_NAME, D as ExportFileNameKind, Ot as FavoriteEntityType, ar as FileManagerNotificationReason, or as FileNameValidationErrorReason, sr as FileOperationKind, Wi as McpAppResourceFetchError, Ie as McpResourceKind, it as OAuthResourceKind, fr as PATH_SEPARATOR_REGEXP, nn as PROMPT_CONTENT_MAX_LENGTH, rn as PROMPT_COUNTER_ANNOUNCE_THRESHOLD, an as PROMPT_DESCRIPTION_MAX_LENGTH, on as PROMPT_NAME_MAX_LENGTH, Ce as PUBLIC_SKILL_BUCKET, sn as PromptFieldError, ie as PromptSource, pr as RESERVED_MARKER_NAME, kn as RecipientsCountStatus, le as SKILL_FILE_UPLOAD_MAX_BYTES, we as SKILL_LISTING_MAX_PAGES, Te as SKILL_LISTING_PAGE_SIZE, ue as SKILL_MANIFEST_FILE, Ee as SKILL_MANIFEST_MAX_BYTES, de as SKILL_UPLOAD_MAX_FILES, fe as SKILL_UPLOAD_MAX_TOTAL_BYTES, Sn as SkillEditorLoadState, En as SkillPreviewErrorKind, De as SkillSource, at as TOOLSET_REDIRECT_STATE_KEY, ot as ToolsetAuthStatus, st as ToolsetAuthTypes, ct as ToolsetCredentialsLevel, wt as ToolsetLoginOutcomeType, lt as ToolsetOAuthCallbackQuery, ut as ToolsetOAuthChannelControlType, dt as ToolsetOAuthFailureReason, ft as ToolsetOAuthInitiationResultType, pt as ToolsetOAuthResultType, mr as UPLOAD_CONCURRENCY, mn as UnsupportedTriggerReason, mt as WithLogin, ui as annotationToDisplayAttachment, Jr as annotationToPdfCanvasContent, hn as apSchedulerDayToJsDay, U as appendLocaleCode, di as attachmentDtoToDisplayAttachment, fi as attachmentDtosToDisplayAttachments, Wn as attachmentToDto, Gn as attachmentsToDtos, W as buildAdditionalLocaleOptions, jt as buildAnnouncementSignature, Le as buildApplicationMcpUrl, M as buildChatCompletionsUrl, Re as buildConnectApi, N as buildDeploymentConnectApi, Pi as buildExternalServiceScopeId, Ir as buildFromCache, $t as buildPromptExportEnvelope, en as buildPromptExportFileName, oe as buildPromptOverview, cn as buildPromptPath, P as buildResponsesUrl, vr as buildSharedItemVirtualPath, ke as buildSkillContentTree, pe as buildSkillFilesPayload, me as buildSkillManifest, he as buildSkillManifestForSubmit, ge as buildSkillManifestFromFrontmatter, Ae as buildSkillOverview, yt as buildToolsetAuthorizeUrl, ze as buildToolsetMcpUrl, Yr as clearAttachmentCache, G as composeLocalePayload, It as createChatStreamApi, i as createCsrfMiddleware, Ht as createDeploymentChangedMessage, Gr as createFilesApiClient, Gi as createMcpAppsApiClient, Kn as createMessagePair, A as createPublishApiClient, a as createUnauthorizedMiddleware, Kr as createUploadFileWithProgress, B as decodeToolsetId, K as decomposeLocalizedFields, _r as deriveActionProfile, Ke as deriveAvailableTabIds, jn as deriveConversationRowActionState, qe as deriveFavoriteItems, yr as dialCorePathToRelative, pi as dialFileToAttachment, mi as dialFilesToAttachments, hi as dialFolderPathToAttachment, p as downloadAttachment, ht as emitToolsetLoginSuccess, F as encodeDeploymentId, V as encodeToolsetId, Lr as fetchByTab, Rr as fetchForSearch, tt as fetchSkillDescription, Je as filterCatalogItemsBySelector, Ye as filterHiddenOwnedItems, I as findDeploymentByIdOrReference, br as findDialFileByPath, zr as findFirstSuccessfulCopyMoveItem, xr as findFolderByVirtualPath, Rt as formatAppVersion, Y as formatCalendarDate, S as formatDateYM, C as formatDateYMD, Sr as formatOperationFolderName, k as formatQuotedNameList, e as getApiErrorDetails, t as getApiErrorMessage, n as getApiErrorStatus, Ai as getBrowserTimezone, Zn as getConversationPath, Fn as getConversationSource, Fi as getExternalServiceFallbackName, Ut as getLastDeploymentId, Wt as getLastUserMessageToolConfiguration, Bt as getModelIdFromConversationId, jr as getParentFolderPath, Ve as getPublicCatalogEntityFolderPath, Yt as getQuickAppConversationStarters, ln as getRemainingCharacters, Yn as getStarterConversationText, Xt as getStarterPopulateText, Xn as getStarterSubmitText, Zt as getStartersFromSchema, Vt as getTimeOfDayGreeting, _t as getToolsetOAuthChannelName, bt as getToolsetRedirectUri, si as getUrlFileName, Cr as getVirtualPathName, qn as hasActiveToolConfig, Mt as hasAnnouncementContent, Xr as hasAttachmentTextSource, wr as hasDialFileWritePermission, Tr as hasForbiddenNameSymbols, Nt as hasStructuredAnnouncement, o as includesIgnoreCase, xt as initiateOAuthLogin, tr as isAwaitingGenerationResume, r as isConversationNotFoundError, Er as isCopyMoveDuplicateAllowed, Oi as isCustomAppSchema, g as isDialFileAcceptType, u as isDialFileId, m as isDownloadableAttachment, ci as isExternalSourcePreviewable, Jn as isMessageChanged, Gt as isMessageStreaming, se as isOrganisationPromptItem, He as isPublicCatalogEntityId, H as isPublicToolsetId, ki as isQuickAppSchema, Dr as isShareActionsAllowed, ji as isValidAbsoluteUrl, Mi as isValidFeaturesData, _e as isValidSkillRelativePath, gn as jsDayToApSchedulerDay, Br as mapCorePermissions, Z as mapDeploymentDetailsDtoToEntityDetails, R as mapDeploymentLimitsDtoToCatalogLimits, z as mapDeploymentLimitsToInput, ee as mapDeploymentToCatalogItem, te as mapDeploymentToolsetCredentials, Q as mapEntityDetailsToCatalogDetails, Vr as mapFileMetadataToDialFile, _n as mapFormValuesToCreateBody, vn as mapFormValuesToUpdateBody, ce as mapPromptToCatalogItem, Ue as mapPublishConversationResultDto, We as mapPublishHistoryEntryDto, yn as mapScheduledTaskDtoToFormValues, Hr as mapSearchItem, je as mapSkillToCatalogItem, $ as mapToolsetCredentials, ne as mapToolsetToCatalogItem, Ur as mergeCreatedFolderIntoCache, Kt as messageHasStages, _ as mimeTypesToAttachmentExtensionLabels, v as mimeTypesToDialFileAcceptTypes, y as mimeTypesToFileAccept, ve as nameFromPath, St as navigateToolsetOAuthPopup, qt as normalizeResponseFormat, ye as normalizeSkillName, Or as normalizeVirtualPath, qr as openAnnotationAttachment, Ct as openToolsetOAuthPopup, X as padTwoDigits, Ii as parseExternalServiceUrl, Ni as parseFeaturesData, kr as parseNewFolderVirtualPath, ae as parsePromptResourceUrl, be as parseSkillManifest, et as parseSkillManifestDocument, Oe as parseSkillResourceUrl, Pr as prepareCopyItems, _i as prepareDownloadDestination, Fr as prepareMoveRenameItems, Me as readSkillFileBytes, Ne as readSkillManifest, Xe as reconcileFilterTopics, Zr as referenceAttachmentToPdfCanvasContent, Qe as resolveCatalogPrimaryAction, Qr as resolveCodeCanvasContent, re as resolveDeploymentFolder, Mr as resolveDialFileApiPath, d as resolveDialFileBucketAndPath, li as resolveExternalSourceContentType, $r as resolveHtmlCanvasContent, ei as resolveImageCanvasContent, ti as resolveJsonCanvasContent, q as resolveLocalizedText, ni as resolveMarkdownCanvasContent, Be as resolveMcpResourceKind, ri as resolveOoxmlCanvasContent, Ar as resolveOwnerCoords, ii as resolvePdfCanvasContent, f as resolveRelativeDialFilePath, Pe as resolveSkillFileDownloadPath, Fe as resolveSkillManifestFileId, ai as resolveTextCanvasContent, oi as resolveVisualizerCanvasContent, s as safeDecodeURI, c as safeDecodeURIComponent, Pt as sanitizeAnnouncementHtml, Ft as sanitizeAnnouncementMessageHtml, vi as sanitizeFileName, zt as sanitizeFooterHtml, tn as serializePromptExport, Lt as shouldWatchForDisplayNameUpdate, xe as skillFileBytesToBlob, xn as skillFileToAttachment, yi as splitFileNameExtension, l as stripSurroundingSlashes, gt as subscribeToolsetLoginSuccess, J as toBaseLocale, Jt as toOverlayMessages, Ge as toPublishEntityType, j as toPublishRuleDto, bi as trimFileNameToByteLimit, Se as unpackSkillArchive, Wr as updateEntry, Mn as useActiveConversationSync, Nn as useAsyncConfirmDialog, h as useAttachmentAction, Rn as useAttachmentUpload, x as useAttachmentValidation, $e as useCatalogEditNavigation, rt as useCatalogItemDetails, Et as useCatalogToolsetCredentials, Li as useChatSettingsFormConfig, Un as useConversationExport, Qn as useConversationHandlers, $n as useConversationImport, Pn as useConversationLookupMaps, In as useConversationPanelItems, er as useConversationScroll, rr as useConversationSources, nr as useConversationStream, xi as useDialFileListing, Ei as useDialFileManager, Di as useDialFileManagerTabConfig, Si as useDialFileMetadata, Ci as useDialFileMutations, wi as useDialFileSharing, Ti as useDialFileUploadBatch, kt as useFavoriteEntitiesState, Xi as useGridEditingScroll, Ln as useImportFilePicker, Ji as useMcpAppHostAdapter, qi as useMcpAppHostContext, Ki as useMcpAppTools, Qt as useOAuthCallbackCompletion, Yi as useOpenMcpAppCanvas, Ri as usePageFileDrag, Bi as usePanelMaxWidth, pn as usePromptsState, At as usePublishFolders, Vi as useShareLink, An as useShareRecipientsCount, Dt as useSkillDetailsPanelData, Cn as useSkillEditorLoad, wn as useSkillEditorSubmit, Tn as useSkillFileActions, Dn as useSkillFilePreview, nt as useSkillItemDetails, On as useSkillsState, Hi as useToolsMenu, Tt as useToolsetLogin, Vn as useTranscribeAudio, Ui as useUsageData, zi as useViewportWidth, un as validatePromptContent, dn as validatePromptDescription, fn as validatePromptName, bn as validateSkillFileBatch, Nr as virtualPathToApiPath, vt as waitForToolsetOAuthResult };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epam/ai-dial-chat-hooks",
|
|
3
3
|
"description": "Framework-level React hooks extracted from AI DIAL Chat for building custom chat interfaces",
|
|
4
|
-
"version": "1.1.0-dev.
|
|
4
|
+
"version": "1.1.0-dev.433",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./index.js",
|
|
@@ -104,21 +104,21 @@
|
|
|
104
104
|
},
|
|
105
105
|
"peerDependencies": {
|
|
106
106
|
"react": "^19.2.6",
|
|
107
|
-
"@epam/ai-dial-attachment-canvas": "1.1.0-dev.
|
|
108
|
-
"@epam/ai-dial-attachment-input": "1.1.0-dev.
|
|
109
|
-
"@epam/ai-dial-catalog": "1.1.0-dev.
|
|
110
|
-
"@epam/ai-dial-chat-api-client": "1.1.0-dev.
|
|
111
|
-
"@epam/ai-dial-chat-overlay": "1.1.0-dev.
|
|
112
|
-
"@epam/ai-dial-chat-shared": "1.1.0-dev.
|
|
113
|
-
"@epam/ai-dial-deployment-creation-form": "1.1.0-dev.
|
|
114
|
-
"@epam/ai-dial-mcp-apps": "1.1.0-dev.
|
|
115
|
-
"@epam/ai-dial-publish-panel": "1.1.0-dev.
|
|
116
|
-
"@epam/ai-dial-quotations": "1.1.0-dev.
|
|
107
|
+
"@epam/ai-dial-attachment-canvas": "1.1.0-dev.433",
|
|
108
|
+
"@epam/ai-dial-attachment-input": "1.1.0-dev.433",
|
|
109
|
+
"@epam/ai-dial-catalog": "1.1.0-dev.433",
|
|
110
|
+
"@epam/ai-dial-chat-api-client": "1.1.0-dev.433",
|
|
111
|
+
"@epam/ai-dial-chat-overlay": "1.1.0-dev.433",
|
|
112
|
+
"@epam/ai-dial-chat-shared": "1.1.0-dev.433",
|
|
113
|
+
"@epam/ai-dial-deployment-creation-form": "1.1.0-dev.433",
|
|
114
|
+
"@epam/ai-dial-mcp-apps": "1.1.0-dev.433",
|
|
115
|
+
"@epam/ai-dial-publish-panel": "1.1.0-dev.433",
|
|
116
|
+
"@epam/ai-dial-quotations": "1.1.0-dev.433",
|
|
117
117
|
"@epam/ai-dial-react-file-manager": "*",
|
|
118
|
-
"@epam/ai-dial-scheduled-tasks": "1.1.0-dev.
|
|
119
|
-
"@epam/ai-dial-share": "1.1.0-dev.
|
|
120
|
-
"@epam/ai-dial-skill-editor": "1.1.0-dev.
|
|
121
|
-
"@epam/ai-dial-source-panel": "1.1.0-dev.
|
|
118
|
+
"@epam/ai-dial-scheduled-tasks": "1.1.0-dev.433",
|
|
119
|
+
"@epam/ai-dial-share": "1.1.0-dev.433",
|
|
120
|
+
"@epam/ai-dial-skill-editor": "1.1.0-dev.433",
|
|
121
|
+
"@epam/ai-dial-source-panel": "1.1.0-dev.433",
|
|
122
122
|
"@epam/ai-dial-ui-kit": "*",
|
|
123
123
|
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
124
124
|
"@epam/pdf-highlighter-kit": ">=0.0.14",
|