@epam/ai-dial-chat-hooks 1.3.0-dev.86 → 1.3.0-dev.89
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.
|
@@ -15,6 +15,8 @@ export interface CatalogEditNavigationLabels {
|
|
|
15
15
|
createSkillWriteInstructions: string;
|
|
16
16
|
createSkillUpload: string;
|
|
17
17
|
createPrompt: string;
|
|
18
|
+
/** Header of the Create menu's runner section (Custom App and the runner schemas). */
|
|
19
|
+
createRunners: string;
|
|
18
20
|
deleteError: string;
|
|
19
21
|
}
|
|
20
22
|
/**
|
|
@@ -83,7 +85,12 @@ export interface UseCatalogEditNavigationParams {
|
|
|
83
85
|
export interface UseCatalogEditNavigationResult {
|
|
84
86
|
handleEdit: (item: CatalogItem) => void;
|
|
85
87
|
handleDelete: (item: CatalogItem) => Promise<void>;
|
|
86
|
-
/**
|
|
88
|
+
/**
|
|
89
|
+
* The Create dropdown's items, all filtered by `createSearch.value`: Toolset,
|
|
90
|
+
* Skill and Prompt sorted by label, then a divider and a runner-section header,
|
|
91
|
+
* then Custom App and the runners sorted by label. The divider and header are
|
|
92
|
+
* present only while both sections hold an option.
|
|
93
|
+
*/
|
|
87
94
|
createOptions: DropdownItem[];
|
|
88
95
|
/** The Create menu's search field state, or `undefined` when no runner option is offered. */
|
|
89
96
|
createSearch: CatalogCreateSearch | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCatalogEditNavigation.d.ts","sourceRoot":"","sources":["../../../src/catalog/useCatalogEditNavigation/useCatalogEditNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,WAAW,EACX,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,2BAA2B,EAC3B,iBAAiB,EAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"useCatalogEditNavigation.d.ts","sourceRoot":"","sources":["../../../src/catalog/useCatalogEditNavigation/useCatalogEditNavigation.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,144 +4,163 @@ import { parseSkillResourceUrl as n } from "../../skill/skill-types.js";
|
|
|
4
4
|
import { getRunnerSchemas as r, isMindMapSchema as i, isQuickAppSchema as a } from "../../shared/application-schema.js";
|
|
5
5
|
import { CatalogEntityType as o } from "@epam/ai-dial-chat-shared";
|
|
6
6
|
import { useCallback as s, useMemo as c, useState as l } from "react";
|
|
7
|
+
import { DropdownItemType as u } from "@epam/ai-dial-ui-kit";
|
|
7
8
|
//#region src/catalog/useCatalogEditNavigation/useCatalogEditNavigation.ts
|
|
8
|
-
var
|
|
9
|
-
let
|
|
9
|
+
var d = (e) => [...e].sort((e, t) => String(e.label ?? "").localeCompare(String(t.label ?? ""), void 0, { sensitivity: "base" })), f = ({ deployments: f, isCustomAppsEnabled: p, isSchemaAppsEnabled: m, isHideCustomAppCreationEnabled: h, isToolsetsEnabled: g, isPromptsEnabled: _, schemas: v, urls: y, onNavigate: b, deletePrompt: x, deleteToolset: S, deleteSkill: C, deleteApplication: w, refetchPrompts: T, refetchToolsets: E, refetchSkills: D, refetchDeployments: O, onDeleteSuccess: k, labels: A, onNotify: j, onSkillUploadClick: M }) => {
|
|
10
|
+
let N = c(() => r(v), [v]), P = c(() => N.filter((e) => !i(e)), [N]), [F, I] = l(""), L = m && !h, R = s((e) => {
|
|
10
11
|
if (e.type === o.Prompt) {
|
|
11
|
-
y
|
|
12
|
+
b(y.buildPromptEditUrl(e.id));
|
|
12
13
|
return;
|
|
13
14
|
}
|
|
14
15
|
if (e.type === o.Skill) {
|
|
15
|
-
y
|
|
16
|
+
b(y.buildSkillEditUrl(e.id));
|
|
16
17
|
return;
|
|
17
18
|
}
|
|
18
19
|
if (e.type === o.Toolset) {
|
|
19
|
-
y
|
|
20
|
+
b(y.buildToolsetEditUrl(e.id));
|
|
20
21
|
return;
|
|
21
22
|
}
|
|
22
|
-
let n = t(
|
|
23
|
-
if (
|
|
24
|
-
y
|
|
23
|
+
let n = t(f, e.id);
|
|
24
|
+
if (p && n != null && !n.applicationTypeSchemaId) {
|
|
25
|
+
b(y.buildCustomAppEditUrl(e.id));
|
|
25
26
|
return;
|
|
26
27
|
}
|
|
27
|
-
let r =
|
|
28
|
-
r && y
|
|
28
|
+
let r = N.find((e) => e.id === n?.applicationTypeSchemaId)?.id ?? N.find((e) => a(e))?.id;
|
|
29
|
+
r && b(y.buildQuickAppEditUrl(r, e.id));
|
|
29
30
|
}, [
|
|
30
|
-
d,
|
|
31
31
|
f,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
32
|
+
p,
|
|
33
|
+
N,
|
|
34
|
+
b,
|
|
35
|
+
y
|
|
36
|
+
]), z = s(async (t) => {
|
|
36
37
|
try {
|
|
37
|
-
if (t.type === o.Prompt) await
|
|
38
|
-
else if (t.type === o.Toolset) await
|
|
38
|
+
if (t.type === o.Prompt) await x(t.id), await T();
|
|
39
|
+
else if (t.type === o.Toolset) await S(t.id), await E();
|
|
39
40
|
else if (t.type === o.Skill) {
|
|
40
41
|
let e = n(t.id);
|
|
41
42
|
if (e == null) throw Error(`Invalid skill resource url: ${t.id}`);
|
|
42
|
-
await
|
|
43
|
-
} else await
|
|
44
|
-
|
|
43
|
+
await C(e.bucket, e.path), await D();
|
|
44
|
+
} else await w(t.id), await O();
|
|
45
|
+
k(t);
|
|
45
46
|
} catch (t) {
|
|
46
47
|
let { traceId: n } = await e(t);
|
|
47
|
-
throw
|
|
48
|
-
message:
|
|
48
|
+
throw j({
|
|
49
|
+
message: A.deleteError,
|
|
49
50
|
requestId: n
|
|
50
51
|
}), t;
|
|
51
52
|
}
|
|
52
53
|
}, [
|
|
53
|
-
b,
|
|
54
54
|
x,
|
|
55
55
|
S,
|
|
56
56
|
C,
|
|
57
|
-
T,
|
|
58
|
-
D,
|
|
59
57
|
w,
|
|
60
58
|
E,
|
|
61
59
|
O,
|
|
60
|
+
T,
|
|
61
|
+
D,
|
|
62
62
|
k,
|
|
63
|
-
A
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
A,
|
|
64
|
+
j
|
|
65
|
+
]), B = c(() => {
|
|
66
|
+
let e = F.trim().toLocaleLowerCase(), t = (t) => !e || t.toLocaleLowerCase().includes(e), n = L ? P.map((e) => ({
|
|
66
67
|
id: e.id,
|
|
67
68
|
label: e.displayName || e.id
|
|
68
69
|
})).filter((e) => t(e.label)).map((e) => ({
|
|
69
70
|
key: `runner:${e.id}`,
|
|
70
71
|
label: e.label,
|
|
71
|
-
onClick: () => y
|
|
72
|
-
})) : [], r =
|
|
72
|
+
onClick: () => b(y.buildQuickAppCreateUrl(e.id))
|
|
73
|
+
})) : [], r = g && t(A.createToolset) ? {
|
|
73
74
|
key: "toolset",
|
|
74
|
-
label:
|
|
75
|
-
onClick: () => y
|
|
76
|
-
} : void 0, i =
|
|
75
|
+
label: A.createToolset,
|
|
76
|
+
onClick: () => b(y.buildToolsetCreateUrl())
|
|
77
|
+
} : void 0, i = p && !h && t(A.createCustomApp) ? {
|
|
77
78
|
key: "custom-app",
|
|
78
|
-
label:
|
|
79
|
-
onClick: () => y
|
|
79
|
+
label: A.createCustomApp,
|
|
80
|
+
onClick: () => b(y.buildCustomAppCreateUrl())
|
|
80
81
|
} : void 0, a = [{
|
|
81
82
|
key: "skill-write-instructions",
|
|
82
|
-
label:
|
|
83
|
-
onClick: () => y
|
|
83
|
+
label: A.createSkillWriteInstructions,
|
|
84
|
+
onClick: () => b(y.buildSkillCreateUrl())
|
|
84
85
|
}, {
|
|
85
86
|
key: "skill-upload",
|
|
86
|
-
label:
|
|
87
|
-
onClick:
|
|
87
|
+
label: A.createSkillUpload,
|
|
88
|
+
onClick: M
|
|
88
89
|
}];
|
|
89
90
|
return {
|
|
90
91
|
runnerOptions: n,
|
|
91
92
|
toolsetOption: r,
|
|
92
93
|
customAppOption: i,
|
|
93
|
-
visibleSkillChildren: t(
|
|
94
|
-
promptOption:
|
|
94
|
+
visibleSkillChildren: t(A.createSkill) ? a : a.filter((e) => t(String(e.label))),
|
|
95
|
+
promptOption: _ && t(A.createPrompt) ? {
|
|
95
96
|
key: "prompt",
|
|
96
|
-
label:
|
|
97
|
-
onClick: () => y
|
|
97
|
+
label: A.createPrompt,
|
|
98
|
+
onClick: () => b(y.buildPromptCreateUrl())
|
|
98
99
|
} : void 0
|
|
99
100
|
};
|
|
100
101
|
}, [
|
|
102
|
+
F,
|
|
103
|
+
L,
|
|
101
104
|
P,
|
|
102
|
-
|
|
103
|
-
N,
|
|
105
|
+
b,
|
|
104
106
|
y,
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
k,
|
|
108
|
-
m,
|
|
107
|
+
_,
|
|
108
|
+
A,
|
|
109
109
|
h,
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
110
|
+
g,
|
|
111
|
+
p,
|
|
112
|
+
M
|
|
113
|
+
]), V = c(() => {
|
|
114
|
+
let { runnerOptions: e, toolsetOption: t, customAppOption: n, visibleSkillChildren: r, promptOption: i } = B, a = [];
|
|
115
|
+
t && a.push(t), r.length > 0 && a.push({
|
|
115
116
|
key: "skill",
|
|
116
|
-
label:
|
|
117
|
+
label: A.createSkill,
|
|
117
118
|
children: r
|
|
118
|
-
}), i && a.push(i)
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
119
|
+
}), i && a.push(i);
|
|
120
|
+
let o = d(n ? [n, ...e] : e), s = d(a);
|
|
121
|
+
return s.length === 0 || o.length === 0 ? [...s, ...o] : [
|
|
122
|
+
...s,
|
|
123
|
+
{
|
|
124
|
+
key: "create-sections-divider",
|
|
125
|
+
type: u.Divider
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
key: "runners-header",
|
|
129
|
+
type: u.PlainText,
|
|
130
|
+
label: A.createRunners
|
|
131
|
+
},
|
|
132
|
+
...o
|
|
133
|
+
];
|
|
134
|
+
}, [
|
|
135
|
+
B,
|
|
136
|
+
A.createSkill,
|
|
137
|
+
A.createRunners
|
|
138
|
+
]), H = c(() => L && P.length > 0 ? {
|
|
139
|
+
value: F,
|
|
140
|
+
onChange: I
|
|
122
141
|
} : void 0, [
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
142
|
+
L,
|
|
143
|
+
P.length,
|
|
144
|
+
F
|
|
126
145
|
]);
|
|
127
146
|
return {
|
|
128
|
-
handleEdit:
|
|
129
|
-
handleDelete:
|
|
130
|
-
createOptions:
|
|
131
|
-
createSearch:
|
|
147
|
+
handleEdit: R,
|
|
148
|
+
handleDelete: z,
|
|
149
|
+
createOptions: V,
|
|
150
|
+
createSearch: H,
|
|
132
151
|
createMenuByType: c(() => {
|
|
133
|
-
let { runnerOptions: e, toolsetOption: t, customAppOption: n, visibleSkillChildren: r, promptOption: i } =
|
|
152
|
+
let { runnerOptions: e, toolsetOption: t, customAppOption: n, visibleSkillChildren: r, promptOption: i } = B;
|
|
134
153
|
return {
|
|
135
154
|
[o.Agent]: {
|
|
136
|
-
options:
|
|
137
|
-
search:
|
|
155
|
+
options: d(n ? [...e, n] : e),
|
|
156
|
+
search: H
|
|
138
157
|
},
|
|
139
158
|
[o.Toolset]: { options: t ? [t] : [] },
|
|
140
159
|
[o.Skill]: { options: r },
|
|
141
160
|
[o.Prompt]: { options: i ? [i] : [] }
|
|
142
161
|
};
|
|
143
|
-
}, [
|
|
162
|
+
}, [B, H])
|
|
144
163
|
};
|
|
145
164
|
};
|
|
146
165
|
//#endregion
|
|
147
|
-
export {
|
|
166
|
+
export { f as useCatalogEditNavigation };
|
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.3.0-dev.
|
|
4
|
+
"version": "1.3.0-dev.89",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./index.js",
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
}
|
|
122
122
|
},
|
|
123
123
|
"dependencies": {
|
|
124
|
-
"@epam/ai-dial-chat-api-client": "1.3.0-dev.
|
|
124
|
+
"@epam/ai-dial-chat-api-client": "1.3.0-dev.89",
|
|
125
125
|
"dompurify": "3.4.16",
|
|
126
126
|
"fflate": "^0.8.3",
|
|
127
127
|
"lru-cache": "^10.4.3",
|
|
@@ -130,22 +130,22 @@
|
|
|
130
130
|
},
|
|
131
131
|
"peerDependencies": {
|
|
132
132
|
"react": "^19.2.8",
|
|
133
|
-
"@epam/ai-dial-attachment-canvas": "1.3.0-dev.
|
|
134
|
-
"@epam/ai-dial-attachment-input": "1.3.0-dev.
|
|
135
|
-
"@epam/ai-dial-catalog": "1.3.0-dev.
|
|
136
|
-
"@epam/ai-dial-chat-overlay": "1.3.0-dev.
|
|
137
|
-
"@epam/ai-dial-chat-shared": "1.3.0-dev.
|
|
138
|
-
"@epam/ai-dial-conversation-input": "1.3.0-dev.
|
|
139
|
-
"@epam/ai-dial-mcp-apps": "1.3.0-dev.
|
|
140
|
-
"@epam/ai-dial-publish-panel": "1.3.0-dev.
|
|
141
|
-
"@epam/ai-dial-quotations": "1.3.0-dev.
|
|
133
|
+
"@epam/ai-dial-attachment-canvas": "1.3.0-dev.89",
|
|
134
|
+
"@epam/ai-dial-attachment-input": "1.3.0-dev.89",
|
|
135
|
+
"@epam/ai-dial-catalog": "1.3.0-dev.89",
|
|
136
|
+
"@epam/ai-dial-chat-overlay": "1.3.0-dev.89",
|
|
137
|
+
"@epam/ai-dial-chat-shared": "1.3.0-dev.89",
|
|
138
|
+
"@epam/ai-dial-conversation-input": "1.3.0-dev.89",
|
|
139
|
+
"@epam/ai-dial-mcp-apps": "1.3.0-dev.89",
|
|
140
|
+
"@epam/ai-dial-publish-panel": "1.3.0-dev.89",
|
|
141
|
+
"@epam/ai-dial-quotations": "1.3.0-dev.89",
|
|
142
142
|
"@epam/ai-dial-react-file-manager": "^0.4.0-dev.7",
|
|
143
|
-
"@epam/ai-dial-scheduled-tasks": "1.3.0-dev.
|
|
144
|
-
"@epam/ai-dial-share": "1.3.0-dev.
|
|
145
|
-
"@epam/ai-dial-skill-editor": "1.3.0-dev.
|
|
146
|
-
"@epam/ai-dial-source-panel": "1.3.0-dev.
|
|
147
|
-
"@epam/ai-dial-ui-kit": "^0.16.0-dev.
|
|
148
|
-
"@epam/ai-dial-usage-dashboard": "1.3.0-dev.
|
|
143
|
+
"@epam/ai-dial-scheduled-tasks": "1.3.0-dev.89",
|
|
144
|
+
"@epam/ai-dial-share": "1.3.0-dev.89",
|
|
145
|
+
"@epam/ai-dial-skill-editor": "1.3.0-dev.89",
|
|
146
|
+
"@epam/ai-dial-source-panel": "1.3.0-dev.89",
|
|
147
|
+
"@epam/ai-dial-ui-kit": "^0.16.0-dev.13",
|
|
148
|
+
"@epam/ai-dial-usage-dashboard": "1.3.0-dev.89",
|
|
149
149
|
"@modelcontextprotocol/sdk": "^1.32.1",
|
|
150
150
|
"@epam/pdf-highlighter-kit": "^0.0.19",
|
|
151
151
|
"@mcp-ui/client": "^7.1.1"
|