@epam/ai-dial-toolset-editor 1.3.0-dev.321 → 1.3.0-dev.325

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ToolsetEditor.d.ts","sourceRoot":"","sources":["../../../src/components/ToolsetEditor/ToolsetEditor.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,EAAE,EAAa,MAAM,OAAO,CAAC;AAI3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAiD5E,uKAAuK;AACvK,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CA6dhD,CAAC"}
1
+ {"version":3,"file":"ToolsetEditor.d.ts","sourceRoot":"","sources":["../../../src/components/ToolsetEditor/ToolsetEditor.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,EAAE,EAAa,MAAM,OAAO,CAAC;AAI3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAiD5E,uKAAuK;AACvK,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CA+dhD,CAAC"}
package/index.js CHANGED
@@ -1,17 +1,17 @@
1
1
  import { DEFAULT_DEPLOYMENT_VERSION as e, DeploymentCreationFieldErrorCode as t, EntityEditor as n, MetadataField as r, MetadataForm as i, useMetadataForm as a, validateDeploymentCreationFields as o } from "@epam/ai-dial-builder-form";
2
- import { ToolsetAuthTypes as s, ToolsetCredentialsLevel as c, WithLogin as l, getApiErrorDetails as u } from "@epam/ai-dial-chat-hooks";
3
- import { CopyButton as d, ENTITY_DESCRIPTION_MAX_LENGTH as f, ENTITY_NAME_MAX_LENGTH as p, TAG_INPUT_TAG_CLASS_NAME as m, TextRefinementField as h, buildCssVars as g, mergeClasses as _, useCodeCopy as v, useTextRefinement as y } from "@epam/ai-dial-chat-shared";
4
- import { memo as b, useCallback as x, useEffect as S, useMemo as C, useRef as w, useState as T } from "react";
5
- import { IconBrandOauth as E, IconKey as D, IconLockOff as ee, IconLogin as te, IconLogout as ne } from "@tabler/icons-react";
6
- import { CaptionText as O, ConfirmationPopup as re, ConfirmationPopupVariant as ie, DIAL_ICON_SIZE as k, DIAL_KIT_ICON_STROKE as A, Input as j, LiveRegion as ae, LiveRegionElement as M, NeutralButton as oe, PasswordInput as N, Radio as P, RadioGroup as F, SegmentedControl as se, Select as I, TagInput as L } from "@epam/ai-dial-ui-kit";
7
- import { jsx as R, jsxs as z } from "react/jsx-runtime";
2
+ import { ToolsetAuthTypes as s, ToolsetCredentialsLevel as c, WithLogin as l, getApiErrorDetails as ee } from "@epam/ai-dial-chat-hooks";
3
+ import { CopyButton as u, ENTITY_DESCRIPTION_MAX_LENGTH as d, ENTITY_NAME_MAX_LENGTH as f, TAG_INPUT_TAG_CLASS_NAME as p, TextRefinementField as m, buildCssVars as h, mergeClasses as g, useCodeCopy as _, useTextRefinement as v } from "@epam/ai-dial-chat-shared";
4
+ import { memo as y, useCallback as b, useEffect as x, useMemo as S, useRef as C, useState as w } from "react";
5
+ import { IconBrandOauth as T, IconKey as E, IconLockOff as te, IconLogin as ne, IconLogout as re } from "@tabler/icons-react";
6
+ import { CaptionText as D, ConfirmationPopup as ie, ConfirmationPopupVariant as ae, DIAL_ICON_SIZE as O, DIAL_KIT_ICON_STROKE as k, Input as A, LiveRegion as oe, LiveRegionElement as j, NeutralButton as M, PasswordInput as se, Radio as N, RadioGroup as P, SegmentedControl as F, Select as ce, TagInput as le } from "@epam/ai-dial-ui-kit";
7
+ import { jsx as I, jsxs as L } from "react/jsx-runtime";
8
8
  //#region src/constants/public-class-names.ts
9
- var ce = {
9
+ var R = {
10
10
  metadataSection: "dial-toolset-editor-metadata-section",
11
11
  setupSection: "dial-toolset-editor-setup-section"
12
- }, B = /* @__PURE__ */ function(e) {
12
+ }, z = /* @__PURE__ */ function(e) {
13
13
  return e.Http = "HTTP", e.Sse = "SSE", e;
14
- }({}), V = e, le = {
14
+ }({}), B = e, ue = {
15
15
  name: {
16
16
  label: "Name",
17
17
  placeholder: "Enter name"
@@ -50,25 +50,25 @@ var ce = {
50
50
  saveLabel: "Save"
51
51
  },
52
52
  ariaLabel: "General"
53
- }, H = {
54
- [s.OAuth]: E,
55
- [s.ApiKey]: D,
56
- [s.None]: ee
57
- }, U = () => ({
53
+ }, V = {
54
+ [s.OAuth]: T,
55
+ [s.ApiKey]: E,
56
+ [s.None]: te
57
+ }, H = () => ({
58
58
  authenticationType: s.None,
59
59
  withLogin: l.WithoutLogin,
60
60
  isLoggedIn: !1
61
- }), ue = () => ({
61
+ }), U = () => ({
62
62
  name: "",
63
- version: V,
63
+ version: B,
64
64
  iconUrl: "",
65
65
  description: "",
66
66
  topics: [],
67
67
  otherLocales: [],
68
68
  endpoint: "",
69
- protocol: B.Http,
69
+ protocol: z.Http,
70
70
  allowedTools: [],
71
- auth: U()
71
+ auth: H()
72
72
  }), W = (e) => {
73
73
  if (!/^https?:\/\//.test(e) || e.endsWith(".") || e.endsWith("//")) return !1;
74
74
  try {
@@ -76,16 +76,16 @@ var ce = {
76
76
  } catch {
77
77
  return !1;
78
78
  }
79
- }, G = (e) => W(e.trim()), K = /^[A-Za-z][A-Za-z0-9+.-]*:[^\s#]+$/, q = 2048, de = (e) => {
79
+ }, G = (e) => W(e.trim()), de = /^[A-Za-z][A-Za-z0-9+.-]*:[^\s#]+$/, K = 2048, fe = (e) => {
80
80
  let t = e?.trim() ?? "";
81
81
  if (!t) return !0;
82
- if (t.length > q || !K.test(t)) return !1;
82
+ if (t.length > K || !de.test(t)) return !1;
83
83
  try {
84
84
  return !!new URL(t);
85
85
  } catch {
86
86
  return !1;
87
87
  }
88
- }, fe = (e) => e.replace(/^(https?):\/([^/])/, "$1://$2"), J = (e) => {
88
+ }, q = (e) => e.replace(/^(https?):\/([^/])/, "$1://$2"), pe = (e) => {
89
89
  let t = e?.trim() ?? "";
90
90
  if (!t || W(t)) return t;
91
91
  let n = [t];
@@ -94,11 +94,11 @@ var ce = {
94
94
  e !== t && n.push(e);
95
95
  } catch {}
96
96
  for (let e of n) {
97
- let t = fe(e);
97
+ let t = q(e);
98
98
  if (W(t)) return t;
99
99
  }
100
100
  return t;
101
- }, Y = (e, t = !1) => e.isLoggedIn ? !0 : e.authenticationType === s.ApiKey ? e.keyHeader?.trim() ? e.withLogin === l.WithoutLogin || !!(e.keyHeader?.trim() && e.apiKey?.trim()) : !1 : e.authenticationType === s.OAuth && e.withLogin === l.WithConfig ? !!e.clientId?.trim() && (t || !!e.clientSecret?.trim()) && G(e.authorizationEndpoint ?? "") && G(e.tokenEndpoint ?? "") && de(e.resource) : !0, pe = (e, t = !1) => Object.keys(o(e, { validateVersionPattern: !0 })).length === 0 && G(e.endpoint) && Y(e.auth, t), me = /* @__PURE__ */ new Set([
101
+ }, J = (e, t = !1) => e.isLoggedIn ? !0 : e.authenticationType === s.ApiKey ? e.keyHeader?.trim() ? e.withLogin === l.WithoutLogin || !!(e.keyHeader?.trim() && e.apiKey?.trim()) : !1 : e.authenticationType === s.OAuth && e.withLogin === l.WithConfig ? !!e.clientId?.trim() && (t || !!e.clientSecret?.trim()) && G(e.authorizationEndpoint ?? "") && G(e.tokenEndpoint ?? "") && fe(e.resource) : !0, me = (e, t = !1) => Object.keys(o(e, { validateVersionPattern: !0 })).length === 0 && G(e.endpoint) && J(e.auth, t), Y = /* @__PURE__ */ new Set([
102
102
  "name",
103
103
  "description",
104
104
  "iconUrl",
@@ -114,54 +114,54 @@ var ce = {
114
114
  otherLocales: e.otherLocales
115
115
  }), ge = (e) => {
116
116
  let t = {}, n = {};
117
- for (let [r, i] of Object.entries(e)) (me.has(r) ? t : n)[r] = i;
117
+ for (let [r, i] of Object.entries(e)) (Y.has(r) ? t : n)[r] = i;
118
118
  return {
119
119
  metadata: t,
120
120
  setup: n
121
121
  };
122
122
  }, X = /* @__PURE__ */ function(e) {
123
123
  return e.Success = "success", e.Cancelled = "cancelled", e.PopupBlocked = "popup-blocked", e.InvalidConfig = "invalid-config", e.Failed = "failed", e;
124
- }({}), _e = { openAccessDescription: "_openAccessDescription_1ltst_1" }, Z = "toolset-client-secret-keep-caption", Q = (e) => `******${e}`, ve = (e) => e === s.None ? l.WithoutLogin : l.WithLogin, ye = (e, t) => e === s.None ? t?.typeNone ?? "Open access" : e === s.OAuth ? t?.typeOAuth ?? "OAuth" : t?.typeApiKey ?? "API Key", be = ({ auth: e, errors: t, isSaving: n, toolsetId: r, isEditMode: i, endpoint: a, authActions: o, onOAuthLogin: d, onNotifySuccess: f, onNotifyError: p, onAuthChange: h, onEnsureSaved: g, labels: v, titleClassName: y = "dial-h3-text", openAccessDescriptionClassName: b = "dial-small-text" }) => {
125
- let [x, S] = T(!1), [C, w] = T(!1), E = e.isLoggedIn || n || x, D = i && e.clientSecretHint && !e.clientSecret ? e.clientSecretHint : void 0, ee = G(a) && Y(e, i) && !E, ae = (t) => {
126
- E || t === e.authenticationType || h({
124
+ }({}), Z = { openAccessDescription: "_openAccessDescription_1ltst_1" }, _e = "toolset-client-secret-keep-caption", ve = (e) => `******${e}`, Q = (e) => e === s.None ? l.WithoutLogin : l.WithLogin, ye = (e, t) => e === s.None ? t?.typeNone ?? "Open access" : e === s.OAuth ? t?.typeOAuth ?? "OAuth" : t?.typeApiKey ?? "API Key", be = ({ auth: e, errors: t, isSaving: n, toolsetId: r, isEditMode: i, endpoint: a, authActions: o, onOAuthLogin: u, onNotifySuccess: d, onNotifyError: f, onAuthChange: m, onEnsureSaved: h, labels: _, titleClassName: v = "dial-h3-text", openAccessDescriptionClassName: y = "dial-small-text" }) => {
125
+ let [b, x] = w(!1), [S, C] = w(!1), T = e.isLoggedIn || n || b, E = i && e.clientSecretHint && !e.clientSecret ? e.clientSecretHint : void 0, te = G(a) && J(e, i) && !T, oe = (t) => {
126
+ T || t === e.authenticationType || m({
127
127
  authenticationType: t,
128
- withLogin: ve(t)
128
+ withLogin: Q(t)
129
129
  });
130
- }, M = (e) => {
131
- h({ withLogin: e });
132
- }, F = (e) => {
133
- switch (e.auth != null && h(e.auth), e.status) {
130
+ }, j = (e) => {
131
+ m({ withLogin: e });
132
+ }, P = (e) => {
133
+ switch (e.auth != null && m(e.auth), e.status) {
134
134
  case X.Success:
135
- h({ isLoggedIn: !0 }), f(v?.loginSuccessMessage ?? "Successfully logged in.");
135
+ m({ isLoggedIn: !0 }), d(_?.loginSuccessMessage ?? "Successfully logged in.");
136
136
  return;
137
137
  case X.PopupBlocked:
138
- p(v?.errorPopupBlocked ?? "The login popup was blocked by your browser. Please allow popups for this site and try again.");
138
+ f(_?.errorPopupBlocked ?? "The login popup was blocked by your browser. Please allow popups for this site and try again.");
139
139
  return;
140
140
  case X.InvalidConfig:
141
- p(v?.errorOAuthConfigMissing ?? "The OAuth provider did not return a valid client configuration. Please check the endpoint or contact your administrator.");
141
+ f(_?.errorOAuthConfigMissing ?? "The OAuth provider did not return a valid client configuration. Please check the endpoint or contact your administrator.");
142
142
  return;
143
143
  case X.Failed:
144
- p(v?.errorLoginFailed ?? "Failed to log in. Please check your credentials and try again.", e.traceId);
144
+ f(_?.errorLoginFailed ?? "Failed to log in. Please check your credentials and try again.", e.traceId);
145
145
  return;
146
146
  case X.Cancelled: return;
147
147
  }
148
- }, I = async () => {
149
- if (!ee) return;
148
+ }, ce = async () => {
149
+ if (!te) return;
150
150
  if (e.authenticationType === s.OAuth) {
151
- S(!0);
151
+ x(!0);
152
152
  try {
153
- F(await d({
153
+ P(await u({
154
154
  auth: e,
155
- ensureSaved: g
155
+ ensureSaved: h
156
156
  }));
157
157
  } finally {
158
- S(!1);
158
+ x(!1);
159
159
  }
160
160
  return;
161
161
  }
162
- let t = await g();
162
+ let t = await h();
163
163
  if (t) {
164
- S(!0);
164
+ x(!0);
165
165
  try {
166
166
  let n = {
167
167
  url: t,
@@ -169,325 +169,325 @@ var ce = {
169
169
  authenticationType: e.authenticationType,
170
170
  apiKey: e.apiKey?.trim()
171
171
  };
172
- await o.login(t, n), h({ isLoggedIn: !0 }), f(v?.loginSuccessMessage ?? "Successfully logged in.");
172
+ await o.login(t, n), m({ isLoggedIn: !0 }), d(_?.loginSuccessMessage ?? "Successfully logged in.");
173
173
  } catch (e) {
174
- let { traceId: t } = await u(e);
175
- p(v?.errorLoginFailed ?? "Failed to log in. Please check your credentials and try again.", t);
174
+ let { traceId: t } = await ee(e);
175
+ f(_?.errorLoginFailed ?? "Failed to log in. Please check your credentials and try again.", t);
176
176
  } finally {
177
- S(!1);
177
+ x(!1);
178
178
  }
179
179
  }
180
- }, ce = async () => {
181
- S(!0);
180
+ }, R = async () => {
181
+ x(!0);
182
182
  try {
183
183
  let t = {
184
184
  url: r,
185
185
  credentialsLevel: c.User,
186
186
  authenticationType: e.authenticationType
187
187
  };
188
- await o.logout(r, t), h({ isLoggedIn: !1 }), w(!1), f(v?.logoutSuccessMessage ?? "Successfully logged out.");
188
+ await o.logout(r, t), m({ isLoggedIn: !1 }), C(!1), d(_?.logoutSuccessMessage ?? "Successfully logged out.");
189
189
  } catch (e) {
190
- let { traceId: t } = await u(e);
191
- p(v?.errorLogoutFailed ?? "Failed to log out. Please try again.", t);
190
+ let { traceId: t } = await ee(e);
191
+ f(_?.errorLogoutFailed ?? "Failed to log out. Please try again.", t);
192
192
  } finally {
193
- S(!1);
193
+ x(!1);
194
194
  }
195
- }, B = () => e.isLoggedIn ? /* @__PURE__ */ R("div", {
195
+ }, z = () => e.isLoggedIn ? /* @__PURE__ */ I("div", {
196
196
  className: "flex",
197
- children: /* @__PURE__ */ R(oe, {
198
- label: v?.logOutLabel ?? "Log out",
199
- iconBefore: /* @__PURE__ */ R(ne, {
200
- size: k.MD,
201
- stroke: A
197
+ children: /* @__PURE__ */ I(M, {
198
+ label: _?.logOutLabel ?? "Log out",
199
+ iconBefore: /* @__PURE__ */ I(re, {
200
+ size: O.MD,
201
+ stroke: k
202
202
  }),
203
- onClick: () => w(!0),
204
- disabled: n || x
203
+ onClick: () => C(!0),
204
+ disabled: n || b
205
205
  })
206
- }) : /* @__PURE__ */ R("div", {
206
+ }) : /* @__PURE__ */ I("div", {
207
207
  className: "flex",
208
- children: /* @__PURE__ */ R(oe, {
209
- label: v?.logInLabel ?? "Log in",
210
- iconBefore: /* @__PURE__ */ R(te, {
211
- size: k.MD,
212
- stroke: A
208
+ children: /* @__PURE__ */ I(M, {
209
+ label: _?.logInLabel ?? "Log in",
210
+ iconBefore: /* @__PURE__ */ I(ne, {
211
+ size: O.MD,
212
+ stroke: k
213
213
  }),
214
- onClick: I,
215
- disabled: !ee
214
+ onClick: ce,
215
+ disabled: !te
216
216
  })
217
217
  });
218
- return /* @__PURE__ */ z("section", {
218
+ return /* @__PURE__ */ L("section", {
219
219
  className: "flex flex-col gap-2",
220
220
  children: [
221
- /* @__PURE__ */ R("h3", {
222
- className: y,
223
- children: v?.sectionTitle ?? "Authentication"
221
+ /* @__PURE__ */ I("h3", {
222
+ className: v,
223
+ children: _?.sectionTitle ?? "Authentication"
224
224
  }),
225
- /* @__PURE__ */ R(se, {
226
- "aria-label": v?.sectionTitle ?? "Authentication",
225
+ /* @__PURE__ */ I(F, {
226
+ "aria-label": _?.sectionTitle ?? "Authentication",
227
227
  value: e.authenticationType,
228
- onChange: (e) => ae(e),
228
+ onChange: (e) => oe(e),
229
229
  segmentClassName: "px-2",
230
230
  items: [
231
231
  s.None,
232
232
  s.OAuth,
233
233
  s.ApiKey
234
234
  ].map((t) => {
235
- let n = H[t];
235
+ let n = V[t];
236
236
  return {
237
237
  value: t,
238
- label: /* @__PURE__ */ z("div", {
238
+ label: /* @__PURE__ */ L("div", {
239
239
  className: "flex items-center gap-2",
240
- children: [/* @__PURE__ */ R(n, {
240
+ children: [/* @__PURE__ */ I(n, {
241
241
  className: "shrink-0",
242
- size: k.SM,
243
- stroke: A,
242
+ size: O.SM,
243
+ stroke: k,
244
244
  "aria-hidden": !0
245
- }), /* @__PURE__ */ R("span", {
245
+ }), /* @__PURE__ */ I("span", {
246
246
  className: "sr-only desktop:not-sr-only",
247
- children: ye(t, v)
247
+ children: ye(t, _)
248
248
  })]
249
249
  }),
250
- disabled: E && e.authenticationType !== t
250
+ disabled: T && e.authenticationType !== t
251
251
  };
252
252
  })
253
253
  }),
254
- e.authenticationType === s.None && /* @__PURE__ */ R("p", {
255
- className: _("pt-2", b, _e.openAccessDescription),
256
- children: v?.openAccessDescription ?? "Open endpoint, no credentials"
254
+ e.authenticationType === s.None && /* @__PURE__ */ I("p", {
255
+ className: g("pt-2", y, Z.openAccessDescription),
256
+ children: _?.openAccessDescription ?? "Open endpoint, no credentials"
257
257
  }),
258
- e.authenticationType === s.OAuth && /* @__PURE__ */ z("div", {
258
+ e.authenticationType === s.OAuth && /* @__PURE__ */ L("div", {
259
259
  className: "flex flex-col gap-3 pt-2",
260
260
  children: [
261
- /* @__PURE__ */ z("div", {
261
+ /* @__PURE__ */ L("div", {
262
262
  className: "flex flex-col gap-2",
263
- children: [/* @__PURE__ */ R(P, {
263
+ children: [/* @__PURE__ */ I(N, {
264
264
  name: "oauth-login-mode",
265
265
  id: "oauth-with-login",
266
266
  value: l.WithLogin,
267
- labelProps: { label: v?.withLoginOAuthLabel ?? "Standard login" },
267
+ labelProps: { label: _?.withLoginOAuthLabel ?? "Standard login" },
268
268
  isSelected: e.withLogin === l.WithLogin,
269
- disabled: E,
270
- onChange: M
271
- }), /* @__PURE__ */ R(P, {
269
+ disabled: T,
270
+ onChange: j
271
+ }), /* @__PURE__ */ I(N, {
272
272
  name: "oauth-login-mode",
273
273
  id: "oauth-with-config",
274
274
  value: l.WithConfig,
275
- labelProps: { label: v?.withConfigOAuthLabel ?? "Custom login" },
275
+ labelProps: { label: _?.withConfigOAuthLabel ?? "Custom login" },
276
276
  isSelected: e.withLogin === l.WithConfig,
277
- disabled: E,
278
- onChange: M
277
+ disabled: T,
278
+ onChange: j
279
279
  })]
280
280
  }),
281
- e.withLogin === l.WithConfig && /* @__PURE__ */ z("div", {
281
+ e.withLogin === l.WithConfig && /* @__PURE__ */ L("div", {
282
282
  className: "flex flex-col gap-3",
283
283
  children: [
284
- /* @__PURE__ */ R(j, {
284
+ /* @__PURE__ */ I(A, {
285
285
  id: "toolset-client-id",
286
286
  value: e.clientId ?? "",
287
- onChange: (e) => h({ clientId: e ?? "" }),
287
+ onChange: (e) => m({ clientId: e ?? "" }),
288
288
  labelProps: {
289
- label: v?.clientIdLabel ?? "Client ID",
289
+ label: _?.clientIdLabel ?? "Client ID",
290
290
  required: !0
291
291
  },
292
- placeholder: v?.clientIdPlaceholder ?? "Enter client ID",
292
+ placeholder: _?.clientIdPlaceholder ?? "Enter client ID",
293
293
  error: t.clientId || void 0,
294
294
  invalid: !!t.clientId,
295
- disabled: E
295
+ disabled: T
296
296
  }),
297
- /* @__PURE__ */ z("div", {
297
+ /* @__PURE__ */ L("div", {
298
298
  className: "flex flex-col gap-1",
299
- children: [/* @__PURE__ */ R(N, {
299
+ children: [/* @__PURE__ */ I(se, {
300
300
  id: "toolset-client-secret",
301
301
  value: e.clientSecret ?? "",
302
- onChange: (e) => h({ clientSecret: e ?? "" }),
302
+ onChange: (e) => m({ clientSecret: e ?? "" }),
303
303
  labelProps: {
304
- label: v?.clientSecretLabel ?? "Client secret",
304
+ label: _?.clientSecretLabel ?? "Client secret",
305
305
  required: !i
306
306
  },
307
- placeholder: D == null ? v?.clientSecretPlaceholder ?? "Enter client secret" : (v?.clientSecretHintPlaceholder ?? Q)(D),
308
- "aria-describedby": D == null ? void 0 : Z,
309
- showPasswordLabel: v?.showClientSecretLabel ?? "Show client secret",
310
- hidePasswordLabel: v?.hideClientSecretLabel ?? "Hide client secret",
307
+ placeholder: E == null ? _?.clientSecretPlaceholder ?? "Enter client secret" : (_?.clientSecretHintPlaceholder ?? ve)(E),
308
+ "aria-describedby": E == null ? void 0 : _e,
309
+ showPasswordLabel: _?.showClientSecretLabel ?? "Show client secret",
310
+ hidePasswordLabel: _?.hideClientSecretLabel ?? "Hide client secret",
311
311
  error: t.clientSecret || void 0,
312
312
  invalid: !!t.clientSecret,
313
- disabled: E
314
- }), D != null && /* @__PURE__ */ R(O, {
315
- id: Z,
316
- text: v?.clientSecretKeepCaption ?? "Leave empty to keep the saved secret."
313
+ disabled: T
314
+ }), E != null && /* @__PURE__ */ I(D, {
315
+ id: _e,
316
+ text: _?.clientSecretKeepCaption ?? "Leave empty to keep the saved secret."
317
317
  })]
318
318
  }),
319
- /* @__PURE__ */ R(j, {
319
+ /* @__PURE__ */ I(A, {
320
320
  id: "toolset-authorization-endpoint",
321
321
  value: e.authorizationEndpoint ?? "",
322
- onChange: (e) => h({ authorizationEndpoint: e ?? "" }),
322
+ onChange: (e) => m({ authorizationEndpoint: e ?? "" }),
323
323
  labelProps: {
324
- label: v?.authorizationEndpointLabel ?? "Authorization endpoint",
324
+ label: _?.authorizationEndpointLabel ?? "Authorization endpoint",
325
325
  required: !0
326
326
  },
327
- placeholder: v?.authorizationEndpointPlaceholder ?? "Enter authorization endpoint",
327
+ placeholder: _?.authorizationEndpointPlaceholder ?? "Enter authorization endpoint",
328
328
  error: t.authorizationEndpoint || void 0,
329
329
  invalid: !!t.authorizationEndpoint,
330
- disabled: E
330
+ disabled: T
331
331
  }),
332
- /* @__PURE__ */ R(j, {
332
+ /* @__PURE__ */ I(A, {
333
333
  id: "toolset-token-endpoint",
334
334
  value: e.tokenEndpoint ?? "",
335
- onChange: (e) => h({ tokenEndpoint: e ?? "" }),
335
+ onChange: (e) => m({ tokenEndpoint: e ?? "" }),
336
336
  labelProps: {
337
- label: v?.tokenEndpointLabel ?? "Token endpoint",
337
+ label: _?.tokenEndpointLabel ?? "Token endpoint",
338
338
  required: !0
339
339
  },
340
- placeholder: v?.tokenEndpointPlaceholder ?? "Enter token endpoint",
340
+ placeholder: _?.tokenEndpointPlaceholder ?? "Enter token endpoint",
341
341
  error: t.tokenEndpoint || void 0,
342
342
  invalid: !!t.tokenEndpoint,
343
- disabled: E
343
+ disabled: T
344
344
  }),
345
- /* @__PURE__ */ R(L, {
345
+ /* @__PURE__ */ I(le, {
346
346
  id: "toolset-scopes",
347
- labelProps: { label: v?.scopesLabel ?? "Scopes" },
348
- placeholder: v?.scopesPlaceholder ?? "Enter scopes",
347
+ labelProps: { label: _?.scopesLabel ?? "Scopes" },
348
+ placeholder: _?.scopesPlaceholder ?? "Enter scopes",
349
349
  value: e.scopes ?? [],
350
- onChange: (e) => h({ scopes: e }),
351
- disabled: E,
352
- tagClassName: m
350
+ onChange: (e) => m({ scopes: e }),
351
+ disabled: T,
352
+ tagClassName: p
353
353
  }),
354
- /* @__PURE__ */ R(j, {
354
+ /* @__PURE__ */ I(A, {
355
355
  id: "toolset-resource",
356
356
  value: e.resource ?? "",
357
- onChange: (e) => h({ resource: e ?? "" }),
358
- labelProps: { label: v?.resourceLabel ?? "Resource" },
359
- placeholder: v?.resourcePlaceholder ?? "Enter resource URI",
357
+ onChange: (e) => m({ resource: e ?? "" }),
358
+ labelProps: { label: _?.resourceLabel ?? "Resource" },
359
+ placeholder: _?.resourcePlaceholder ?? "Enter resource URI",
360
360
  error: t.resource || void 0,
361
361
  invalid: !!t.resource,
362
- disabled: E
362
+ disabled: T
363
363
  })
364
364
  ]
365
365
  }),
366
- B()
366
+ z()
367
367
  ]
368
368
  }),
369
- e.authenticationType === s.ApiKey && /* @__PURE__ */ z("div", {
369
+ e.authenticationType === s.ApiKey && /* @__PURE__ */ L("div", {
370
370
  className: "flex flex-col gap-3 pt-2",
371
371
  children: [
372
- /* @__PURE__ */ z("div", {
372
+ /* @__PURE__ */ L("div", {
373
373
  className: "flex flex-col gap-2",
374
- children: [/* @__PURE__ */ R(P, {
374
+ children: [/* @__PURE__ */ I(N, {
375
375
  name: "apikey-login-mode",
376
376
  id: "apikey-with-login",
377
377
  value: l.WithLogin,
378
- labelProps: { label: v?.withLoginLabel ?? "With login" },
378
+ labelProps: { label: _?.withLoginLabel ?? "With login" },
379
379
  isSelected: e.withLogin === l.WithLogin,
380
- disabled: E,
381
- onChange: M
382
- }), /* @__PURE__ */ R(P, {
380
+ disabled: T,
381
+ onChange: j
382
+ }), /* @__PURE__ */ I(N, {
383
383
  name: "apikey-login-mode",
384
384
  id: "apikey-without-login",
385
385
  value: l.WithoutLogin,
386
- labelProps: { label: v?.withoutLoginLabel ?? "Without login" },
386
+ labelProps: { label: _?.withoutLoginLabel ?? "Without login" },
387
387
  isSelected: e.withLogin === l.WithoutLogin,
388
- disabled: E,
389
- onChange: M
388
+ disabled: T,
389
+ onChange: j
390
390
  })]
391
391
  }),
392
- /* @__PURE__ */ z("div", {
392
+ /* @__PURE__ */ L("div", {
393
393
  className: "flex flex-col gap-3",
394
- children: [/* @__PURE__ */ R(j, {
394
+ children: [/* @__PURE__ */ I(A, {
395
395
  id: "toolset-key-header",
396
396
  value: e.keyHeader ?? "",
397
- onChange: (e) => h({ keyHeader: e ?? "" }),
397
+ onChange: (e) => m({ keyHeader: e ?? "" }),
398
398
  labelProps: {
399
- label: v?.keyHeaderLabel ?? "API Key parameter name",
399
+ label: _?.keyHeaderLabel ?? "API Key parameter name",
400
400
  required: !0
401
401
  },
402
- placeholder: v?.keyHeaderPlaceholder ?? "Enter API key parameter name",
402
+ placeholder: _?.keyHeaderPlaceholder ?? "Enter API key parameter name",
403
403
  error: t.keyHeader || void 0,
404
404
  invalid: !!t.keyHeader,
405
- disabled: E
406
- }), e.withLogin === l.WithLogin && /* @__PURE__ */ R(N, {
405
+ disabled: T
406
+ }), e.withLogin === l.WithLogin && /* @__PURE__ */ I(se, {
407
407
  id: "toolset-api-key",
408
408
  value: e.apiKey ?? "",
409
- onChange: (e) => h({ apiKey: e ?? "" }),
409
+ onChange: (e) => m({ apiKey: e ?? "" }),
410
410
  labelProps: {
411
- label: v?.apiKeyLabel ?? "API key",
411
+ label: _?.apiKeyLabel ?? "API key",
412
412
  required: !0
413
413
  },
414
- placeholder: v?.apiKeyPlaceholder ?? "Enter API key",
415
- showPasswordLabel: v?.showApiKeyLabel ?? "Show API key",
416
- hidePasswordLabel: v?.hideApiKeyLabel ?? "Hide API key",
414
+ placeholder: _?.apiKeyPlaceholder ?? "Enter API key",
415
+ showPasswordLabel: _?.showApiKeyLabel ?? "Show API key",
416
+ hidePasswordLabel: _?.hideApiKeyLabel ?? "Hide API key",
417
417
  error: t.apiKey || void 0,
418
418
  invalid: !!t.apiKey,
419
- disabled: E
419
+ disabled: T
420
420
  })]
421
421
  }),
422
- e.withLogin !== l.WithoutLogin && B()
422
+ e.withLogin !== l.WithoutLogin && z()
423
423
  ]
424
424
  }),
425
- C && /* @__PURE__ */ R(re, {
426
- open: C,
427
- header: v?.logoutConfirmTitle ?? "Log out?",
428
- description: v?.logoutConfirmDescription ?? "Are you sure you want to log out? You will need to re-enter your credentials to use this toolset again.",
429
- confirmLabel: v?.logOutLabel ?? "Log out",
430
- cancelLabel: v?.cancelLabel ?? "Cancel",
431
- variant: ie.Danger,
432
- isLoading: x,
433
- disableConfirmButton: x,
434
- onConfirm: ce,
435
- onCancel: () => w(!1),
436
- onClose: () => w(!1)
425
+ S && /* @__PURE__ */ I(ie, {
426
+ open: S,
427
+ header: _?.logoutConfirmTitle ?? "Log out?",
428
+ description: _?.logoutConfirmDescription ?? "Are you sure you want to log out? You will need to re-enter your credentials to use this toolset again.",
429
+ confirmLabel: _?.logOutLabel ?? "Log out",
430
+ cancelLabel: _?.cancelLabel ?? "Cancel",
431
+ variant: ae.Danger,
432
+ isLoading: b,
433
+ disableConfirmButton: b,
434
+ onConfirm: R,
435
+ onCancel: () => C(!1),
436
+ onClose: () => C(!1)
437
437
  })
438
438
  ]
439
439
  });
440
440
  }, xe = {
441
441
  title: "_title_17wsg_1",
442
442
  description: "_description_17wsg_5"
443
- }, $ = b(({ url: e, className: t, labels: n, titleClassName: r = "dial-body-semi-text", descriptionClassName: i = "dial-small-text" }) => {
444
- let { isCopied: a, copy: o } = v(e), s = n?.copiedLabel ?? "Copied!";
445
- return /* @__PURE__ */ z("div", {
446
- className: _("flex flex-col gap-3", t),
443
+ }, Se = y(({ url: e, className: t, labels: n, titleClassName: r = "dial-body-semi-text", descriptionClassName: i = "dial-small-text" }) => {
444
+ let { isCopied: a, copy: o } = _(e), s = n?.copiedLabel ?? "Copied!";
445
+ return /* @__PURE__ */ L("div", {
446
+ className: g("flex flex-col gap-3", t),
447
447
  children: [
448
- /* @__PURE__ */ z("div", {
448
+ /* @__PURE__ */ L("div", {
449
449
  className: "flex flex-col gap-1",
450
- children: [/* @__PURE__ */ R("p", {
451
- className: _("text-start", r, xe.title),
450
+ children: [/* @__PURE__ */ I("p", {
451
+ className: g("text-start", r, xe.title),
452
452
  children: n?.title ?? "Connect toolset"
453
- }), /* @__PURE__ */ R("p", {
454
- className: _("text-start", i, xe.description),
453
+ }), /* @__PURE__ */ I("p", {
454
+ className: g("text-start", i, xe.description),
455
455
  children: n?.description ?? "Copy endpoint URL to easily integrate toolset into your workflows"
456
456
  })]
457
457
  }),
458
- /* @__PURE__ */ R("div", { children: /* @__PURE__ */ R(d, {
458
+ /* @__PURE__ */ I("div", { children: /* @__PURE__ */ I(u, {
459
459
  copiedLabel: s,
460
460
  copyLabel: n?.copyLabel ?? "Copy URL",
461
461
  isCopied: a,
462
462
  onClick: o
463
463
  }) }),
464
- /* @__PURE__ */ R(ae, {
464
+ /* @__PURE__ */ I(oe, {
465
465
  visuallyHidden: !0,
466
- as: M.Span,
466
+ as: j.Span,
467
467
  children: a ? s : ""
468
468
  })
469
469
  ]
470
470
  });
471
- }), Se = { connectDivider: "_connectDivider_obfkd_1" }, Ce = ({ form: e, errors: t, isSaving: n, toolsetId: r, isEditMode: i, connectUrl: a, listToolNames: o, authActions: s, onOAuthLogin: c, onNotifySuccess: l, onNotifyError: u, onChange: d, onAuthChange: f, onEnsureSaved: p, labels: h, colors: v, typography: y }) => {
472
- let [b, x] = T(null), w = !!a && !!r, E = C(() => [{
473
- value: B.Http,
471
+ }), $ = { connectDivider: "_connectDivider_obfkd_1" }, Ce = ({ form: e, errors: t, isSaving: n, toolsetId: r, isEditMode: i, connectUrl: a, listToolNames: o, authActions: s, onOAuthLogin: c, onNotifySuccess: l, onNotifyError: ee, onChange: u, onAuthChange: d, onEnsureSaved: f, labels: m, colors: _, typography: v }) => {
472
+ let [y, b] = w(null), C = !!a && !!r, T = S(() => [{
473
+ value: z.Http,
474
474
  label: "HTTP"
475
475
  }, {
476
- value: B.Sse,
476
+ value: z.Sse,
477
477
  label: "SSE"
478
478
  }], []);
479
- return S(() => {
480
- if (!r || !o || !Y(e.auth, i)) {
481
- x(null);
479
+ return x(() => {
480
+ if (!r || !o || !J(e.auth, i)) {
481
+ b(null);
482
482
  return;
483
483
  }
484
484
  let t = !1;
485
485
  return (async () => {
486
486
  try {
487
487
  let e = await o(r);
488
- t || x(e.length > 0 ? e : null);
488
+ t || b(e.length > 0 ? e : null);
489
489
  } catch {
490
- t || x(null);
490
+ t || b(null);
491
491
  }
492
492
  })(), () => {
493
493
  t = !0;
@@ -498,62 +498,62 @@ var ce = {
498
498
  e.auth,
499
499
  e.endpoint,
500
500
  o
501
- ]), /* @__PURE__ */ z("div", {
501
+ ]), /* @__PURE__ */ L("div", {
502
502
  className: "flex max-w-[1060px] flex-col gap-4",
503
- style: g({
504
- "--te-connect-title": v?.connectTitle,
505
- "--te-connect-description": v?.connectDescription,
506
- "--te-connect-divider": v?.connectDivider,
507
- "--te-open-access-description": v?.openAccessDescription
503
+ style: h({
504
+ "--te-connect-title": _?.connectTitle,
505
+ "--te-connect-description": _?.connectDescription,
506
+ "--te-connect-divider": _?.connectDivider,
507
+ "--te-open-access-description": _?.openAccessDescription
508
508
  }),
509
509
  children: [
510
- /* @__PURE__ */ R(j, {
510
+ /* @__PURE__ */ I(A, {
511
511
  id: "toolset-endpoint",
512
512
  value: e.endpoint,
513
- onChange: (e) => d({ endpoint: e ?? "" }),
513
+ onChange: (e) => u({ endpoint: e ?? "" }),
514
514
  labelProps: {
515
- label: h?.endpointLabel ?? "Endpoint",
515
+ label: m?.endpointLabel ?? "Endpoint",
516
516
  required: !0
517
517
  },
518
- placeholder: h?.endpointPlaceholder ?? "https://...",
519
- caption: h?.endpointCaption ?? "The HTTPS address where the server accepts MCP requests. Choose the transport under Protocol below.",
518
+ placeholder: m?.endpointPlaceholder ?? "https://...",
519
+ caption: m?.endpointCaption ?? "The HTTPS address where the server accepts MCP requests. Choose the transport under Protocol below.",
520
520
  error: t.endpoint || void 0,
521
521
  invalid: !!t.endpoint
522
522
  }),
523
- /* @__PURE__ */ R(F, {
523
+ /* @__PURE__ */ I(P, {
524
524
  labelProps: {
525
- label: h?.protocolLabel ?? "Protocol",
525
+ label: m?.protocolLabel ?? "Protocol",
526
526
  required: !0
527
527
  },
528
528
  id: "toolset-protocol",
529
- items: E,
529
+ items: T,
530
530
  value: e.protocol,
531
531
  onChange: (e) => {
532
- d({ protocol: e });
532
+ u({ protocol: e });
533
533
  }
534
534
  }),
535
- b ? /* @__PURE__ */ R(I, {
535
+ y ? /* @__PURE__ */ I(ce, {
536
536
  id: "toolset-allowed-tools",
537
537
  multiple: !0,
538
538
  searchable: !0,
539
539
  selectAll: !0,
540
- labelProps: { label: h?.allowedToolsLabel ?? "Allowed tools" },
541
- placeholder: h?.allowedToolsSelectPlaceholder ?? "Select allowed tools",
542
- options: b.map((e) => ({
540
+ labelProps: { label: m?.allowedToolsLabel ?? "Allowed tools" },
541
+ placeholder: m?.allowedToolsSelectPlaceholder ?? "Select allowed tools",
542
+ options: y.map((e) => ({
543
543
  value: e,
544
544
  label: e
545
545
  })),
546
546
  value: e.allowedTools,
547
- onChange: (e) => d({ allowedTools: e })
548
- }) : /* @__PURE__ */ R(L, {
547
+ onChange: (e) => u({ allowedTools: e })
548
+ }) : /* @__PURE__ */ I(le, {
549
549
  id: "toolset-allowed-tools",
550
- labelProps: { label: h?.allowedToolsLabel ?? "Allowed tools" },
551
- placeholder: h?.allowedToolsPlaceholder ?? "Add tools, comma separated",
550
+ labelProps: { label: m?.allowedToolsLabel ?? "Allowed tools" },
551
+ placeholder: m?.allowedToolsPlaceholder ?? "Add tools, comma separated",
552
552
  value: e.allowedTools,
553
- onChange: (e) => d({ allowedTools: e }),
554
- tagClassName: m
553
+ onChange: (e) => u({ allowedTools: e }),
554
+ tagClassName: p
555
555
  }),
556
- /* @__PURE__ */ R(be, {
556
+ /* @__PURE__ */ I(be, {
557
557
  auth: e.auth,
558
558
  errors: t,
559
559
  isSaving: n,
@@ -563,19 +563,19 @@ var ce = {
563
563
  authActions: s,
564
564
  onOAuthLogin: c,
565
565
  onNotifySuccess: l,
566
- onNotifyError: u,
567
- onAuthChange: f,
568
- onEnsureSaved: p,
569
- labels: h?.auth,
570
- titleClassName: y?.authTitleClassName,
571
- openAccessDescriptionClassName: y?.openAccessDescriptionClassName
566
+ onNotifyError: ee,
567
+ onAuthChange: d,
568
+ onEnsureSaved: f,
569
+ labels: m?.auth,
570
+ titleClassName: v?.authTitleClassName,
571
+ openAccessDescriptionClassName: v?.openAccessDescriptionClassName
572
572
  }),
573
- w && /* @__PURE__ */ R($, {
573
+ C && /* @__PURE__ */ I(Se, {
574
574
  url: a ?? "",
575
- labels: h?.connect,
576
- titleClassName: y?.connectTitleClassName,
577
- descriptionClassName: y?.connectDescriptionClassName,
578
- className: _("border-t pt-4", Se.connectDivider)
575
+ labels: m?.connect,
576
+ titleClassName: v?.connectTitleClassName,
577
+ descriptionClassName: v?.connectDescriptionClassName,
578
+ className: g("border-t pt-4", $.connectDivider)
579
579
  })
580
580
  ]
581
581
  });
@@ -591,65 +591,65 @@ var ce = {
591
591
  let t = {};
592
592
  for (let n of Object.keys(e)) Ee.has(n) && (t[n] = !0);
593
593
  return t;
594
- }, ke = ({ initialForm: e, toolsetId: o, onPersist: c, onPostSaveLogin: d, onToolsetsChanged: m, onSaveSuccess: g, onSaveComplete: _, onBack: v, onDirtyChange: b, buildMcpUrl: E, listToolNames: D, authActions: ee, onOAuthLogin: te, onNotifySuccess: ne, onNotifyError: O, avatarPicker: re, availableLocaleOptions: ie, onRefineDescription: k, labels: A, colors: j, typography: ae }) => {
595
- let M = !!o, [oe, N] = T(""), P = o || oe, [F, se] = T({
594
+ }, ke = ({ initialForm: e, toolsetId: o, onPersist: c, onPostSaveLogin: u, onToolsetsChanged: p, onSaveSuccess: h, onSaveComplete: g, onBack: _, onDirtyChange: y, buildMcpUrl: T, listToolNames: E, authActions: te, onOAuthLogin: ne, onNotifySuccess: re, onNotifyError: D, avatarPicker: ie, availableLocaleOptions: ae, formatLocaleLabel: O, onRefineDescription: k, labels: A, colors: oe, typography: j }) => {
595
+ let M = !!o, [se, N] = w(""), P = o || se, [F, ce] = w({
596
596
  initialForm: e,
597
597
  key: 0
598
- }), [I, L] = T(e);
599
- F.initialForm !== e && (se({
598
+ }), [le, L] = w(e);
599
+ F.initialForm !== e && (ce({
600
600
  initialForm: e,
601
601
  key: F.key + 1
602
602
  }), L(e));
603
- let z = C(() => he(e), [e]), { values: B, setValues: V, markTouched: H, visibleErrorCodes: U, attemptSubmit: ue } = a({
603
+ let z = S(() => he(e), [e]), { values: B, setValues: V, markTouched: H, visibleErrorCodes: U, attemptSubmit: W } = a({
604
604
  initialValues: z,
605
605
  validationOptions: De,
606
606
  reseedKey: F.key
607
- }), [W, K] = T(e), q = C(() => ({
608
- ...W,
607
+ }), [de, K] = w(e), q = S(() => ({
608
+ ...de,
609
609
  ...B
610
- }), [W, B]), fe = C(() => JSON.stringify(q) !== JSON.stringify(I), [q, I]);
611
- S(() => {
612
- b?.(fe);
613
- }, [fe, b]);
614
- let [J, Y] = T(!1), [me, X] = T({}), [_e, Z] = T({}), Q = w(null);
615
- S(() => {
616
- K(e), Q.current = e, X({}), Z({}), N("");
610
+ }), [de, B]), pe = S(() => JSON.stringify(q) !== JSON.stringify(le), [q, le]);
611
+ x(() => {
612
+ y?.(pe);
613
+ }, [pe, y]);
614
+ let [J, Y] = w(!1), [X, Z] = w({}), [_e, ve] = w({}), Q = C(null);
615
+ x(() => {
616
+ K(e), Q.current = e, Z({}), ve({}), N("");
617
617
  }, [e]);
618
- let ve = x((e) => {
618
+ let ye = b((e) => {
619
619
  let { metadata: t, setup: n } = ge(e);
620
620
  Object.keys(t).length > 0 && (V(t), "name" in t && H(r.Name), "version" in t && H(r.Version)), Object.keys(n).length !== 0 && (K((e) => ({
621
621
  ...e,
622
622
  ...n
623
- })), Z((e) => ({
623
+ })), ve((e) => ({
624
624
  ...e,
625
625
  ...Oe(n)
626
- })), X((e) => {
626
+ })), Z((e) => {
627
627
  let t = { ...e };
628
628
  for (let e of Object.keys(n)) delete t[e];
629
629
  return t;
630
630
  }));
631
- }, [V, H]), ye = x((e) => {
631
+ }, [V, H]), be = b((e) => {
632
632
  K((t) => ({
633
633
  ...t,
634
634
  auth: {
635
635
  ...t.auth,
636
636
  ...e
637
637
  }
638
- })), Z((t) => ({
638
+ })), ve((t) => ({
639
639
  ...t,
640
640
  ...Oe(e)
641
- })), X((t) => {
641
+ })), Z((t) => {
642
642
  let n = { ...t };
643
643
  if ("authenticationType" in e || "withLogin" in e || "isLoggedIn" in e) for (let e of we) delete n[e];
644
644
  else for (let t of Object.keys(e)) delete n[t];
645
645
  return n;
646
- }), "isLoggedIn" in e && m();
647
- }, [m]), be = x(async () => {
646
+ }), "isLoggedIn" in e && p();
647
+ }, [p]), xe = b(async () => {
648
648
  if (P && Q.current != null && JSON.stringify(Q.current) === JSON.stringify(q)) return P;
649
649
  Y(!0);
650
650
  try {
651
651
  let e = await c(q, P);
652
- return e ? (P || N(e), Q.current = q, L(q), b?.(!1), await m(), e) : null;
652
+ return e ? (P || N(e), Q.current = q, L(q), y?.(!1), await p(), e) : null;
653
653
  } catch {
654
654
  return null;
655
655
  } finally {
@@ -659,85 +659,85 @@ var ce = {
659
659
  q,
660
660
  P,
661
661
  c,
662
- m,
663
- b
664
- ]), xe = x(async () => await be() ?? !1, [be]), $ = x((e) => {
662
+ p,
663
+ y
664
+ ]), Se = b(async () => await xe() ?? !1, [xe]), $ = b((e) => {
665
665
  let t = A?.validation, n = {};
666
- return e.endpoint.trim() ? G(e.endpoint) || (n.endpoint = t?.endpointInvalid ?? "Enter a valid http(s) URL") : n.endpoint = t?.endpointRequired ?? "Endpoint is required", e.auth.isLoggedIn || (e.auth.authenticationType === s.ApiKey && (e.auth.keyHeader?.trim() || (n.keyHeader = t?.keyHeaderRequired ?? "Key name is required"), e.auth.withLogin === l.WithLogin && !e.auth.apiKey?.trim() && (n.apiKey = t?.apiKeyRequired ?? "API key is required")), e.auth.authenticationType === s.OAuth && e.auth.withLogin === l.WithConfig && (e.auth.clientId?.trim() || (n.clientId = t?.clientIdRequired ?? "Client ID is required"), !M && !e.auth.clientSecret?.trim() && (n.clientSecret = t?.clientSecretRequired ?? "Client secret is required"), e.auth.authorizationEndpoint?.trim() ? G(e.auth.authorizationEndpoint) || (n.authorizationEndpoint = t?.endpointInvalid ?? "Enter a valid http(s) URL") : n.authorizationEndpoint = t?.authorizationEndpointRequired ?? "Authorization endpoint is required", e.auth.tokenEndpoint?.trim() ? G(e.auth.tokenEndpoint) || (n.tokenEndpoint = t?.endpointInvalid ?? "Enter a valid http(s) URL") : n.tokenEndpoint = t?.tokenEndpointRequired ?? "Token endpoint is required", de(e.auth.resource) || (n.resource = t?.resourceInvalid ?? "Enter an absolute URI without a fragment"))), n;
667
- }, [A, M]), Se = x(async () => {
668
- let e = ue(), t = $(q);
669
- if (!e || Object.keys(t).length > 0) X(t);
666
+ return e.endpoint.trim() ? G(e.endpoint) || (n.endpoint = t?.endpointInvalid ?? "Enter a valid http(s) URL") : n.endpoint = t?.endpointRequired ?? "Endpoint is required", e.auth.isLoggedIn || (e.auth.authenticationType === s.ApiKey && (e.auth.keyHeader?.trim() || (n.keyHeader = t?.keyHeaderRequired ?? "Key name is required"), e.auth.withLogin === l.WithLogin && !e.auth.apiKey?.trim() && (n.apiKey = t?.apiKeyRequired ?? "API key is required")), e.auth.authenticationType === s.OAuth && e.auth.withLogin === l.WithConfig && (e.auth.clientId?.trim() || (n.clientId = t?.clientIdRequired ?? "Client ID is required"), !M && !e.auth.clientSecret?.trim() && (n.clientSecret = t?.clientSecretRequired ?? "Client secret is required"), e.auth.authorizationEndpoint?.trim() ? G(e.auth.authorizationEndpoint) || (n.authorizationEndpoint = t?.endpointInvalid ?? "Enter a valid http(s) URL") : n.authorizationEndpoint = t?.authorizationEndpointRequired ?? "Authorization endpoint is required", e.auth.tokenEndpoint?.trim() ? G(e.auth.tokenEndpoint) || (n.tokenEndpoint = t?.endpointInvalid ?? "Enter a valid http(s) URL") : n.tokenEndpoint = t?.tokenEndpointRequired ?? "Token endpoint is required", fe(e.auth.resource) || (n.resource = t?.resourceInvalid ?? "Enter an absolute URI without a fragment"))), n;
667
+ }, [A, M]), Ee = b(async () => {
668
+ let e = W(), t = $(q);
669
+ if (!e || Object.keys(t).length > 0) Z(t);
670
670
  else {
671
- X({}), Y(!0);
671
+ Z({}), Y(!0);
672
672
  try {
673
673
  let e = await c(q, P);
674
674
  if (!e) return;
675
- L(q), await m(), g(q);
675
+ L(q), await p(), h(q);
676
676
  try {
677
- await d(e, q.auth), _();
677
+ await u(e, q.auth), g();
678
678
  } catch (e) {
679
- let { traceId: t } = await u(e);
680
- O(A?.settings?.auth?.errorLoginFailed ?? "Failed to log in. Please check your credentials and try again.", t);
679
+ let { traceId: t } = await ee(e);
680
+ D(A?.settings?.auth?.errorLoginFailed ?? "Failed to log in. Please check your credentials and try again.", t);
681
681
  }
682
682
  } catch {} finally {
683
683
  Y(!1);
684
684
  }
685
685
  }
686
686
  }, [
687
- ue,
687
+ W,
688
688
  q,
689
689
  $,
690
690
  P,
691
691
  c,
692
- m,
692
+ p,
693
+ h,
693
694
  g,
694
- _,
695
- d,
696
- O,
695
+ u,
696
+ D,
697
697
  A
698
- ]), Ee = y({
698
+ ]), ke = v({
699
699
  value: B.description,
700
- onChange: (e) => ve({ description: e }),
700
+ onChange: (e) => ye({ description: e }),
701
701
  onRefine: k,
702
702
  disabled: J,
703
703
  resetKey: F.key
704
- }), ke = k ? (e, t) => /* @__PURE__ */ R(h, {
704
+ }), Ae = k ? (e, t) => /* @__PURE__ */ I(m, {
705
705
  isEnabled: !0,
706
706
  fieldId: t,
707
707
  label: A?.general?.form?.description.label ?? "Description",
708
708
  labels: A?.refinement,
709
- refinement: Ee,
710
- disabled: Ee.isPending || J,
709
+ refinement: ke,
710
+ disabled: ke.isPending || J,
711
711
  children: e
712
- }) : void 0, Ae = C(() => ({
713
- form: A?.general?.form ?? le,
712
+ }) : void 0, je = S(() => ({
713
+ form: A?.general?.form ?? ue,
714
714
  avatarPicker: A?.general?.avatarPicker
715
- }), [A?.general?.form, A?.general?.avatarPicker]), je = C(() => !pe(q, M), [q, M]), Me = C(() => {
716
- let e = A?.validation, n = $(q), r = { ...me };
715
+ }), [A?.general?.form, A?.general?.avatarPicker]), Me = S(() => !me(q, M), [q, M]), Ne = S(() => {
716
+ let e = A?.validation, n = $(q), r = { ...X };
717
717
  for (let e of Te) {
718
718
  if (!_e[e]) continue;
719
719
  let t = n[e];
720
720
  t ? r[e] = t : delete r[e];
721
721
  }
722
- return U.name === t.Required ? r.name = e?.nameRequired ?? "Name is required" : U.name === t.TooLong ? r.name = e?.nameTooLong ?? `Use ${p} characters or fewer.` : U.name === t.ControlCharacters && (r.name = e?.nameControlCharacters ?? "Remove line breaks, tabs and other control characters."), U.description === t.TooLong && (r.description = e?.descriptionTooLong ?? `Use ${f} characters or fewer.`), U.version === t.InvalidFormat && (r.version = e?.versionInvalid ?? "Version may only contain letters, digits, dots, underscores, and dashes"), r;
722
+ return U.name === t.Required ? r.name = e?.nameRequired ?? "Name is required" : U.name === t.TooLong ? r.name = e?.nameTooLong ?? `Use ${f} characters or fewer.` : U.name === t.ControlCharacters && (r.name = e?.nameControlCharacters ?? "Remove line breaks, tabs and other control characters."), U.description === t.TooLong && (r.description = e?.descriptionTooLong ?? `Use ${d} characters or fewer.`), U.version === t.InvalidFormat && (r.version = e?.versionInvalid ?? "Version may only contain letters, digits, dots, underscores, and dashes"), r;
723
723
  }, [
724
724
  _e,
725
- me,
725
+ X,
726
726
  q,
727
727
  A,
728
728
  U,
729
729
  $
730
- ]), Ne = E && P ? E(P) : void 0;
731
- return /* @__PURE__ */ R(n, {
730
+ ]), Pe = T && P ? T(P) : void 0;
731
+ return /* @__PURE__ */ I(n, {
732
732
  title: M ? A?.layout?.editTitle ?? "Edit toolset" : A?.layout?.createTitle ?? "Create toolset",
733
- onBack: v,
734
- onCancel: v,
735
- onSubmit: Se,
733
+ onBack: _,
734
+ onCancel: _,
735
+ onSubmit: Ee,
736
736
  submitLabel: M ? A?.layout?.saveLabel ?? "Save" : A?.layout?.createLabel ?? "Create",
737
737
  isSubmitting: J,
738
- isSubmitDisabled: je || Ee.isPending,
739
- metadataSectionClassName: ce.metadataSection,
740
- setupSectionClassName: ce.setupSection,
738
+ isSubmitDisabled: Me || ke.isPending,
739
+ metadataSectionClassName: R.metadataSection,
740
+ setupSectionClassName: R.setupSection,
741
741
  labels: {
742
742
  backAriaLabel: A?.layout?.backAriaLabel ?? "Back to catalog",
743
743
  savingStatusLabel: A?.layout?.savingStatusLabel ?? "Saving",
@@ -745,35 +745,36 @@ var ce = {
745
745
  setupTitle: A?.layout?.setupSectionTitle ?? "Setup",
746
746
  cancelLabel: A?.layout?.cancelLabel ?? "Cancel"
747
747
  },
748
- metadata: /* @__PURE__ */ R(i, {
748
+ metadata: /* @__PURE__ */ I(i, {
749
749
  values: q,
750
- errors: Me,
751
- onChange: ve,
752
- avatarPicker: re,
753
- availableLocaleOptions: ie,
754
- renderDescription: ke,
755
- labels: Ae
750
+ errors: Ne,
751
+ onChange: ye,
752
+ avatarPicker: ie,
753
+ availableLocaleOptions: ae,
754
+ formatLocaleLabel: O,
755
+ renderDescription: Ae,
756
+ labels: je
756
757
  }),
757
- setup: /* @__PURE__ */ R(Ce, {
758
+ setup: /* @__PURE__ */ I(Ce, {
758
759
  form: q,
759
- errors: Me,
760
+ errors: Ne,
760
761
  isSaving: J,
761
762
  toolsetId: P,
762
763
  isEditMode: M,
763
- connectUrl: Ne,
764
- listToolNames: D,
765
- authActions: ee,
766
- onOAuthLogin: te,
767
- onNotifySuccess: ne,
768
- onNotifyError: O,
769
- onChange: ve,
770
- onAuthChange: ye,
771
- onEnsureSaved: xe,
764
+ connectUrl: Pe,
765
+ listToolNames: E,
766
+ authActions: te,
767
+ onOAuthLogin: ne,
768
+ onNotifySuccess: re,
769
+ onNotifyError: D,
770
+ onChange: ye,
771
+ onAuthChange: be,
772
+ onEnsureSaved: Se,
772
773
  labels: A?.settings,
773
- colors: j?.settings,
774
- typography: ae?.settings
774
+ colors: oe?.settings,
775
+ typography: j?.settings
775
776
  })
776
777
  });
777
778
  };
778
779
  //#endregion
779
- export { H as AUTH_TYPE_ICONS, V as DEFAULT_TOOLSET_VERSION, ce as TOOLSET_EDITOR_CLASS, ke as ToolsetEditor, X as ToolsetOAuthLoginStatus, B as ToolsetTransportType, ue as getDefaultToolsetForm, Y as isToolsetAuthValid, pe as isToolsetFormValid, G as isValidEndpointUrl, J as normalizeReturnedEndpointUrl };
780
+ export { V as AUTH_TYPE_ICONS, B as DEFAULT_TOOLSET_VERSION, R as TOOLSET_EDITOR_CLASS, ke as ToolsetEditor, X as ToolsetOAuthLoginStatus, z as ToolsetTransportType, U as getDefaultToolsetForm, J as isToolsetAuthValid, me as isToolsetFormValid, G as isValidEndpointUrl, pe as normalizeReturnedEndpointUrl };
@@ -146,6 +146,8 @@ export interface ToolsetEditorProps {
146
146
  avatarPicker: MetadataFormAvatarPicker;
147
147
  /** Locale options offered by the "Add locale" popup. */
148
148
  availableLocaleOptions: DeploymentCreationFormLocaleOption[];
149
+ /** Labels a stored locale code that is not in `availableLocaleOptions`. Defaults to `code.toUpperCase()`. */
150
+ formatLocaleLabel?: (code: string) => string;
149
151
  /** Optional Description rewrite callback; omission hides the Refine with AI action. */
150
152
  onRefineDescription?: TextRefinementCallback;
151
153
  /** Pre-translated labels; each group falls back to English defaults. */
@@ -1 +1 @@
1
- {"version":3,"file":"toolset-editor-props.d.ts","sourceRoot":"","sources":["../../src/models/toolset-editor-props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kCAAkC,EAClC,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EACV,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,yFAAyF;AACzF,MAAM,WAAW,6BAA6B;IAC5C,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qGAAqG;IACrG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gIAAgI;IAChI,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,6GAA6G;IAC7G,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gIAAgI;IAChI,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mFAAmF;IACnF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0FAA0F;IAC1F,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2GAA2G;IAC3G,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,8GAA8G;IAC9G,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,8FAA8F;IAC9F,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iJAAiJ;IACjJ,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,0GAA0G;AAC1G,MAAM,WAAW,yBAAyB;IACxC,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yEAAyE;IACzE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,+EAA+E;IAC/E,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,oCAAoC;IACpC,MAAM,CAAC,EAAE,yBAAyB,CAAC;IACnC,+DAA+D;IAC/D,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,0CAA0C;IAC1C,UAAU,CAAC,EAAE,6BAA6B,CAAC;CAC5C;AAED,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,wCAAwC;IACxC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED,2FAA2F;AAC3F,MAAM,WAAW,uBAAuB;IACtC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CACnC;AAED,4CAA4C;AAC5C,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,WAAW,EAAE,eAAe,CAAC;IAC7B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,SAAS,EAAE,CACT,IAAI,EAAE,eAAe,EACrB,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5B;;;;OAIG;IACH,eAAe,EAAE,CACf,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,mBAAmB,KACtB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB;;;OAGG;IACH,iBAAiB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9C;;;OAGG;IACH,aAAa,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IAC/C,8FAA8F;IAC9F,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,+DAA+D;IAC/D,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,iLAAiL;IACjL,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzD,gFAAgF;IAChF,WAAW,EAAE,kBAAkB,CAAC;IAChC,mEAAmE;IACnE,YAAY,EAAE,wBAAwB,CAAC;IACvC,2DAA2D;IAC3D,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,gFAAgF;IAChF,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,4HAA4H;IAC5H,YAAY,EAAE,wBAAwB,CAAC;IACvC,wDAAwD;IACxD,sBAAsB,EAAE,kCAAkC,EAAE,CAAC;IAC7D,uFAAuF;IACvF,mBAAmB,CAAC,EAAE,sBAAsB,CAAC;IAC7C,wEAAwE;IACxE,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,yDAAyD;IACzD,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,kCAAkC;IAClC,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC"}
1
+ {"version":3,"file":"toolset-editor-props.d.ts","sourceRoot":"","sources":["../../src/models/toolset-editor-props.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@epam/ai-dial-toolset-editor",
3
3
  "description": "Host-agnostic form for authoring and editing a DIAL MCP toolset",
4
- "version": "1.3.0-dev.321",
4
+ "version": "1.3.0-dev.325",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "main": "./index.js",
@@ -18,11 +18,11 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@tabler/icons-react": "^3.50.0",
21
- "@epam/ai-dial-builder-form": "1.3.0-dev.321"
21
+ "@epam/ai-dial-builder-form": "1.3.0-dev.325"
22
22
  },
23
23
  "peerDependencies": {
24
- "@epam/ai-dial-chat-hooks": "1.3.0-dev.321",
25
- "@epam/ai-dial-chat-shared": "1.3.0-dev.321",
24
+ "@epam/ai-dial-chat-hooks": "1.3.0-dev.325",
25
+ "@epam/ai-dial-chat-shared": "1.3.0-dev.325",
26
26
  "@epam/ai-dial-ui-kit": "^0.16.0-dev.72",
27
27
  "react": "^19.2.8"
28
28
  },