@epam/ai-dial-chat-hooks 1.3.0-dev.294 → 1.3.0-dev.304
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/application-credentials.d.ts.map +1 -1
- package/catalog/application-credentials.js +20 -25
- package/catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.d.ts.map +1 -1
- package/catalog/useCatalogToolsetCredentials/useCatalogToolsetCredentials.js +72 -77
- package/conversation/useConversationScroll/useConversationScroll.d.ts.map +1 -1
- package/conversation/useConversationScroll/useConversationScroll.js +64 -63
- package/external-services/useExternalServiceLogin.d.ts +3 -13
- package/external-services/useExternalServiceLogin.d.ts.map +1 -1
- package/external-services/useExternalServiceLogin.js +49 -58
- package/index.js +168 -168
- package/mcp-apps/useMcpAppTools/useMcpAppTools.d.ts.map +1 -1
- package/mcp-apps/useMcpAppTools/useMcpAppTools.js +42 -39
- package/oauth/authorize-url.d.ts +7 -1
- package/oauth/authorize-url.d.ts.map +1 -1
- package/oauth/authorize-url.js +13 -3
- package/oauth/models.d.ts +25 -0
- package/oauth/models.d.ts.map +1 -1
- package/oauth/useToolsetLogin/useToolsetLogin.d.ts.map +1 -1
- package/oauth/useToolsetLogin/useToolsetLogin.js +45 -56
- package/oauth.js +7 -7
- package/package.json +17 -17
- package/project/projects-api-client.d.ts +9 -11
- package/project/projects-api-client.d.ts.map +1 -1
- package/project/projects-api-client.js +4 -3
- package/project/use-project-conversations.d.ts +15 -13
- package/project/use-project-conversations.d.ts.map +1 -1
- package/project/use-project-conversations.js +127 -110
package/oauth/authorize-url.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ToolsetOAuthSettings } from './models';
|
|
1
|
+
import { ToolsetOAuthSettings, ToolsetOAuthSettingsSource } from './models';
|
|
2
2
|
/**
|
|
3
3
|
* Resolves the OAuth callback location against the current origin. The
|
|
4
4
|
* callback path is supplied by the host: this module owns no application
|
|
@@ -13,4 +13,10 @@ export declare const getToolsetRedirectUri: (callbackPath: string) => string;
|
|
|
13
13
|
* `http:`/`https:` URL.
|
|
14
14
|
*/
|
|
15
15
|
export declare const buildToolsetAuthorizeUrl: (auth: ToolsetOAuthSettings, redirectUri: string, state: string) => string | null;
|
|
16
|
+
/**
|
|
17
|
+
* Maps the public OAuth client fields of a DIAL Core auth-settings DTO onto
|
|
18
|
+
* the settings `buildToolsetAuthorizeUrl` reads, so every login entry point
|
|
19
|
+
* copies the same fields. An absent source yields all-`undefined` settings.
|
|
20
|
+
*/
|
|
21
|
+
export declare const toToolsetOAuthSettings: (source?: ToolsetOAuthSettingsSource) => ToolsetOAuthSettings;
|
|
16
22
|
//# sourceMappingURL=authorize-url.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authorize-url.d.ts","sourceRoot":"","sources":["../../src/oauth/authorize-url.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"authorize-url.d.ts","sourceRoot":"","sources":["../../src/oauth/authorize-url.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,UAAU,CAAC;AAElB;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,cAAc,MAAM,KAAG,MACjB,CAAC;AAU7C;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,oBAAoB,EAC1B,aAAa,MAAM,EACnB,OAAO,MAAM,KACZ,MAAM,GAAG,IAmCX,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GACjC,SAAS,0BAA0B,KAClC,oBAOD,CAAC"}
|
package/oauth/authorize-url.js
CHANGED
|
@@ -3,10 +3,20 @@ var e = (e) => `${window.location.origin}${e}`, t = /* @__PURE__ */ new Set(["ht
|
|
|
3
3
|
if (!e.authorizationEndpoint?.trim() || !e.clientId?.trim()) return null;
|
|
4
4
|
try {
|
|
5
5
|
let i = new URL(e.authorizationEndpoint.trim());
|
|
6
|
-
|
|
6
|
+
if (!t.has(i.protocol)) return null;
|
|
7
|
+
i.searchParams.set("response_type", "code"), i.searchParams.set("client_id", e.clientId.trim()), i.searchParams.set("redirect_uri", n), e.codeChallenge && i.searchParams.set("code_challenge", e.codeChallenge), e.codeChallengeMethod && i.searchParams.set("code_challenge_method", e.codeChallengeMethod), i.searchParams.set("state", r), e.scopes && e.scopes.length > 0 && i.searchParams.set("scope", e.scopes.join(" "));
|
|
8
|
+
let a = e.resource?.trim();
|
|
9
|
+
return a && i.searchParams.set("resource", a), i.toString();
|
|
7
10
|
} catch {
|
|
8
11
|
return null;
|
|
9
12
|
}
|
|
10
|
-
}
|
|
13
|
+
}, r = (e) => ({
|
|
14
|
+
clientId: e?.clientId,
|
|
15
|
+
authorizationEndpoint: e?.authorizationEndpoint,
|
|
16
|
+
scopes: e?.scopesSupported,
|
|
17
|
+
codeChallenge: e?.codeChallenge,
|
|
18
|
+
codeChallengeMethod: e?.codeChallengeMethod,
|
|
19
|
+
resource: e?.resource
|
|
20
|
+
});
|
|
11
21
|
//#endregion
|
|
12
|
-
export { n as buildToolsetAuthorizeUrl, e as getToolsetRedirectUri };
|
|
22
|
+
export { n as buildToolsetAuthorizeUrl, e as getToolsetRedirectUri, r as toToolsetOAuthSettings };
|
package/oauth/models.d.ts
CHANGED
|
@@ -11,6 +11,31 @@ export interface ToolsetOAuthSettings {
|
|
|
11
11
|
scopes?: string[];
|
|
12
12
|
codeChallenge?: string;
|
|
13
13
|
codeChallengeMethod?: string;
|
|
14
|
+
/**
|
|
15
|
+
* RFC 8707 resource indicator DIAL Core stored for the client and sends on
|
|
16
|
+
* the token exchange; the authorize URL must carry the same value.
|
|
17
|
+
*/
|
|
18
|
+
resource?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Public OAuth client fields of a DIAL Core auth-settings DTO, as both a
|
|
22
|
+
* toolset's `authSettings` and an external service's metadata carry them.
|
|
23
|
+
* Declared structurally so `toToolsetOAuthSettings` accepts either without
|
|
24
|
+
* this module importing the generated client.
|
|
25
|
+
*/
|
|
26
|
+
export interface ToolsetOAuthSettingsSource {
|
|
27
|
+
/** OAuth client id. */
|
|
28
|
+
clientId?: string;
|
|
29
|
+
/** Authorization endpoint the popup is sent to. */
|
|
30
|
+
authorizationEndpoint?: string;
|
|
31
|
+
/** Scopes the client may request. */
|
|
32
|
+
scopesSupported?: string[];
|
|
33
|
+
/** PKCE challenge. */
|
|
34
|
+
codeChallenge?: string;
|
|
35
|
+
/** PKCE challenge method. */
|
|
36
|
+
codeChallengeMethod?: string;
|
|
37
|
+
/** RFC 8707 resource indicator. */
|
|
38
|
+
resource?: string;
|
|
14
39
|
}
|
|
15
40
|
/**
|
|
16
41
|
* Redirect state for an OAuth login flow. The flow writes this into the
|
package/oauth/models.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/oauth/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACvB,8BAA8B,EAC9B,yBAAyB,EACzB,gCAAgC,EAChC,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/oauth/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACvB,8BAA8B,EAC9B,yBAAyB,EACzB,gCAAgC,EAChC,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qCAAqC;IACrC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,sBAAsB;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6BAA6B;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,MAAM,4BAA4B,GACpC;IACE,IAAI,EAAE,gCAAgC,CAAC,OAAO,CAAC;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,GACD;IAAE,IAAI,EAAE,gCAAgC,CAAC,OAAO,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,gCAAgC,CAAC,aAAa,CAAA;CAAE,CAAC;AAE7D,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,sBAAsB,CAAC,OAAO,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,uBAAuB,CAAC;CAC3C;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,sBAAsB,CAAC,OAAO,CAAC;IACrC,MAAM,EAAE,yBAAyB,CAAC;CACnC;AAED,qEAAqE;AACrE,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,8BAA8B,CAAC,kBAAkB,CAAC;CACzD;AAED;;;;GAIG;AACH,MAAM,MAAM,0BAA0B,GACpC,0BAA0B,GAAG,0BAA0B,CAAC;AAE1D,0FAA0F;AAC1F,MAAM,MAAM,kBAAkB,GAC1B,0BAA0B,GAC1B,0BAA0B,GAC1B;IAAE,IAAI,EAAE,sBAAsB,CAAC,SAAS,CAAA;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useToolsetLogin.d.ts","sourceRoot":"","sources":["../../../src/oauth/useToolsetLogin/useToolsetLogin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"useToolsetLogin.d.ts","sourceRoot":"","sources":["../../../src/oauth/useToolsetLogin/useToolsetLogin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAOtD,OAAO,EAGL,gBAAgB,EAChB,uBAAuB,EAGxB,MAAM,UAAU,CAAC;AAElB,kDAAkD;AAClD,oBAAY,uBAAuB;IACjC,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,YAAY,kBAAkB;IAC9B,SAAS,cAAc;CACxB;AAED,kDAAkD;AAClD,MAAM,WAAW,mBAAmB;IAClC,0DAA0D;IAC1D,IAAI,EAAE,uBAAuB,CAAC;CAC/B;AAED,sCAAsC;AACtC,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,SAAS,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,qDAAqD;IACrD,kBAAkB,EAAE,gBAAgB,CAAC;IACrC,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,8CAA8C;AAC9C,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,YAAY,EAAE,CACZ,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,mBAAmB,KACtB,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,0EAA0E;IAC1E,aAAa,EAAE,CACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,oBAAoB,KACvB,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,wFAAwF;IACxF,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3D;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,kDAAkD;AAClD,MAAM,WAAW,qBAAqB;IACpC,wEAAwE;IACxE,KAAK,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACrE;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAAI,sFAM7B,qBAAqB,KAAG,qBA+L1B,CAAC"}
|
|
@@ -1,93 +1,82 @@
|
|
|
1
1
|
import { OAuthResourceKind as e, ToolsetAuthStatus as t, ToolsetAuthTypes as n, ToolsetOAuthInitiationResultType as r, ToolsetOAuthResultType as i } from "../types.js";
|
|
2
2
|
import { selectToolsetAuthStatus as a } from "../toolset-id.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
3
|
+
import { toToolsetOAuthSettings as o } from "../authorize-url.js";
|
|
4
|
+
import { emitToolsetLoginSuccess as s } from "../../shared/toolset-login-events.js";
|
|
5
|
+
import { waitForToolsetOAuthResult as c } from "../handshake.js";
|
|
6
|
+
import { initiateOAuthLogin as l, navigateToolsetOAuthPopup as u, openToolsetOAuthPopup as d } from "../popup.js";
|
|
7
|
+
import { useCallback as f } from "react";
|
|
7
8
|
//#region src/oauth/useToolsetLogin/useToolsetLogin.ts
|
|
8
|
-
var
|
|
9
|
+
var p = /* @__PURE__ */ function(e) {
|
|
9
10
|
return e.Success = "success", e.Failure = "failure", e.PopupBlocked = "popup-blocked", e.Cancelled = "cancelled", e;
|
|
10
|
-
}({}),
|
|
11
|
-
let
|
|
11
|
+
}({}), m = ({ callbackPath: p, loginToolset: m, logoutToolset: h, getToolset: g, shouldFetchOAuthSettings: _ = !1 }) => {
|
|
12
|
+
let v = f(async (e, t, n) => {
|
|
12
13
|
try {
|
|
13
|
-
await
|
|
14
|
+
await h(e, {
|
|
14
15
|
url: e,
|
|
15
16
|
credentialsLevel: t,
|
|
16
17
|
authenticationType: n
|
|
17
18
|
});
|
|
18
19
|
} catch {}
|
|
19
|
-
}, [
|
|
20
|
-
let { toolsetId:
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
scopes: v?.scopes,
|
|
24
|
-
codeChallenge: v?.codeChallenge,
|
|
25
|
-
codeChallengeMethod: v?.codeChallengeMethod
|
|
26
|
-
}, S;
|
|
27
|
-
if (y || g) {
|
|
28
|
-
let t = u();
|
|
20
|
+
}, [h]), y = f(async (f) => {
|
|
21
|
+
let { toolsetId: m, credentialsLevel: h, oauthSettings: y, forceStale: b, offlineUsageConsent: x } = f, S = y ?? {}, C;
|
|
22
|
+
if (b || _) {
|
|
23
|
+
let t = d();
|
|
29
24
|
if (!t) return { type: "popup-blocked" };
|
|
30
|
-
|
|
31
|
-
let r =
|
|
32
|
-
if (
|
|
33
|
-
let { authSettings: e } = await
|
|
25
|
+
b && await v(m, h, n.OAuth);
|
|
26
|
+
let r = S;
|
|
27
|
+
if (_) try {
|
|
28
|
+
let { authSettings: e } = await g(m);
|
|
34
29
|
if (t.closed) return { type: "cancelled" };
|
|
35
30
|
if (e?.authenticationType !== n.OAuth) return t.close(), { type: "failure" };
|
|
36
|
-
r =
|
|
37
|
-
clientId: e.clientId,
|
|
38
|
-
authorizationEndpoint: e.authorizationEndpoint,
|
|
39
|
-
scopes: e.scopesSupported,
|
|
40
|
-
codeChallenge: e.codeChallenge,
|
|
41
|
-
codeChallengeMethod: e.codeChallengeMethod
|
|
42
|
-
};
|
|
31
|
+
r = o(e);
|
|
43
32
|
} catch {
|
|
44
33
|
return t.close(), { type: "failure" };
|
|
45
34
|
}
|
|
46
|
-
|
|
47
|
-
} else
|
|
48
|
-
if (
|
|
49
|
-
if (
|
|
50
|
-
let
|
|
51
|
-
toolsetId:
|
|
52
|
-
credentialsLevel:
|
|
53
|
-
callbackPath:
|
|
35
|
+
C = u(t, r, m, p, h, e.Toolset, x);
|
|
36
|
+
} else C = l(S, m, p, h, x);
|
|
37
|
+
if (C.type === r.Blocked) return { type: "popup-blocked" };
|
|
38
|
+
if (C.type !== r.Started) return { type: "failure" };
|
|
39
|
+
let w = await c(C.popup, C.flowId, {
|
|
40
|
+
toolsetId: m,
|
|
41
|
+
credentialsLevel: h,
|
|
42
|
+
callbackPath: p
|
|
54
43
|
});
|
|
55
|
-
if (
|
|
56
|
-
toolsetId:
|
|
57
|
-
credentialsLevel:
|
|
44
|
+
if (w.type === i.Success) return s({
|
|
45
|
+
toolsetId: m,
|
|
46
|
+
credentialsLevel: h
|
|
58
47
|
}), { type: "success" };
|
|
59
|
-
if (
|
|
48
|
+
if (w.type === i.Failure) return { type: "failure" };
|
|
60
49
|
try {
|
|
61
|
-
let e = await
|
|
62
|
-
if (a(e.authSettings,
|
|
63
|
-
toolsetId:
|
|
64
|
-
credentialsLevel:
|
|
50
|
+
let e = await g(m);
|
|
51
|
+
if (a(e.authSettings, h) === t.SignedIn) return s({
|
|
52
|
+
toolsetId: m,
|
|
53
|
+
credentialsLevel: h
|
|
65
54
|
}), { type: "success" };
|
|
66
55
|
} catch {}
|
|
67
56
|
return { type: "cancelled" };
|
|
68
57
|
}, [
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
]),
|
|
74
|
-
let { toolsetId: t, credentialsLevel: n, authenticationType: r, apiKey: i, isCurrentlyFailed: a, forceStale:
|
|
58
|
+
p,
|
|
59
|
+
g,
|
|
60
|
+
v,
|
|
61
|
+
_
|
|
62
|
+
]), b = f(async (e) => {
|
|
63
|
+
let { toolsetId: t, credentialsLevel: n, authenticationType: r, apiKey: i, isCurrentlyFailed: a, forceStale: o, offlineUsageConsent: c } = e;
|
|
75
64
|
try {
|
|
76
|
-
return (
|
|
65
|
+
return (o || a) && await v(t, n, r), await m(t, {
|
|
77
66
|
url: t,
|
|
78
67
|
credentialsLevel: n,
|
|
79
68
|
authenticationType: r,
|
|
80
69
|
apiKey: i?.trim(),
|
|
81
70
|
offlineUsageConsent: c
|
|
82
|
-
}),
|
|
71
|
+
}), s({
|
|
83
72
|
toolsetId: t,
|
|
84
73
|
credentialsLevel: n
|
|
85
74
|
}), { type: "success" };
|
|
86
75
|
} catch {
|
|
87
76
|
return { type: "failure" };
|
|
88
77
|
}
|
|
89
|
-
}, [
|
|
90
|
-
return { login:
|
|
78
|
+
}, [m, v]);
|
|
79
|
+
return { login: f((e) => e.authenticationType === n.OAuth ? y(e) : b(e), [y, b]) };
|
|
91
80
|
};
|
|
92
81
|
//#endregion
|
|
93
|
-
export {
|
|
82
|
+
export { p as ToolsetLoginOutcomeType, m as useToolsetLogin };
|
package/oauth.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { OAuthResourceKind as e, TOOLSET_REDIRECT_STATE_KEY as t, ToolsetAuthStatus as n, ToolsetAuthTypes as r, ToolsetCredentialsLevel as i, ToolsetOAuthCallbackQuery as a, ToolsetOAuthChannelControlType as o, ToolsetOAuthFailureReason as s, ToolsetOAuthInitiationResultType as c, ToolsetOAuthResultType as l, WithLogin as u } from "./oauth/types.js";
|
|
2
2
|
import { decodeToolsetId as d, encodeToolsetId as f, getToolsetFallbackName as p, isPublicToolsetId as m, normalizeToolsetId as h, resolveToolsetCredentialsLevel as g, selectToolsetAuthStatus as _ } from "./oauth/toolset-id.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { initiateOAuthLogin as
|
|
7
|
-
import { ToolsetLoginOutcomeType as
|
|
8
|
-
import { useOAuthCallbackCompletion as
|
|
9
|
-
export { e as OAuthResourceKind, t as TOOLSET_REDIRECT_STATE_KEY, n as ToolsetAuthStatus, r as ToolsetAuthTypes, i as ToolsetCredentialsLevel,
|
|
3
|
+
import { buildToolsetAuthorizeUrl as v, getToolsetRedirectUri as y, toToolsetOAuthSettings as b } from "./oauth/authorize-url.js";
|
|
4
|
+
import { emitToolsetLoginSuccess as x, subscribeToolsetLoginSuccess as S } from "./shared/toolset-login-events.js";
|
|
5
|
+
import { getToolsetOAuthChannelName as C, waitForToolsetOAuthResult as w } from "./oauth/handshake.js";
|
|
6
|
+
import { initiateOAuthLogin as T, navigateToolsetOAuthPopup as E, openToolsetOAuthPopup as D } from "./oauth/popup.js";
|
|
7
|
+
import { ToolsetLoginOutcomeType as O, useToolsetLogin as k } from "./oauth/useToolsetLogin/useToolsetLogin.js";
|
|
8
|
+
import { useOAuthCallbackCompletion as A } from "./oauth/useOAuthCallbackCompletion/useOAuthCallbackCompletion.js";
|
|
9
|
+
export { e as OAuthResourceKind, t as TOOLSET_REDIRECT_STATE_KEY, n as ToolsetAuthStatus, r as ToolsetAuthTypes, i as ToolsetCredentialsLevel, O as ToolsetLoginOutcomeType, a as ToolsetOAuthCallbackQuery, o as ToolsetOAuthChannelControlType, s as ToolsetOAuthFailureReason, c as ToolsetOAuthInitiationResultType, l as ToolsetOAuthResultType, u as WithLogin, v as buildToolsetAuthorizeUrl, d as decodeToolsetId, x as emitToolsetLoginSuccess, f as encodeToolsetId, p as getToolsetFallbackName, C as getToolsetOAuthChannelName, y as getToolsetRedirectUri, T as initiateOAuthLogin, m as isPublicToolsetId, E as navigateToolsetOAuthPopup, h as normalizeToolsetId, D as openToolsetOAuthPopup, g as resolveToolsetCredentialsLevel, _ as selectToolsetAuthStatus, S as subscribeToolsetLoginSuccess, b as toToolsetOAuthSettings, A as useOAuthCallbackCompletion, k as useToolsetLogin, w 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.3.0-dev.
|
|
4
|
+
"version": "1.3.0-dev.304",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./index.js",
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
}
|
|
132
132
|
},
|
|
133
133
|
"dependencies": {
|
|
134
|
-
"@epam/ai-dial-chat-api-client": "1.3.0-dev.
|
|
134
|
+
"@epam/ai-dial-chat-api-client": "1.3.0-dev.304",
|
|
135
135
|
"dompurify": "3.4.17",
|
|
136
136
|
"fflate": "^0.8.3",
|
|
137
137
|
"lru-cache": "^10.4.3",
|
|
@@ -140,23 +140,23 @@
|
|
|
140
140
|
},
|
|
141
141
|
"peerDependencies": {
|
|
142
142
|
"react": "^19.2.8",
|
|
143
|
-
"@epam/ai-dial-attachment-canvas": "1.3.0-dev.
|
|
144
|
-
"@epam/ai-dial-attachment-input": "1.3.0-dev.
|
|
145
|
-
"@epam/ai-dial-catalog": "1.3.0-dev.
|
|
146
|
-
"@epam/ai-dial-chat-overlay": "1.3.0-dev.
|
|
147
|
-
"@epam/ai-dial-chat-shared": "1.3.0-dev.
|
|
148
|
-
"@epam/ai-dial-conversation-input": "1.3.0-dev.
|
|
149
|
-
"@epam/ai-dial-mcp-apps": "1.3.0-dev.
|
|
150
|
-
"@epam/ai-dial-projects": "1.3.0-dev.
|
|
151
|
-
"@epam/ai-dial-publish-panel": "1.3.0-dev.
|
|
152
|
-
"@epam/ai-dial-quotations": "1.3.0-dev.
|
|
143
|
+
"@epam/ai-dial-attachment-canvas": "1.3.0-dev.304",
|
|
144
|
+
"@epam/ai-dial-attachment-input": "1.3.0-dev.304",
|
|
145
|
+
"@epam/ai-dial-catalog": "1.3.0-dev.304",
|
|
146
|
+
"@epam/ai-dial-chat-overlay": "1.3.0-dev.304",
|
|
147
|
+
"@epam/ai-dial-chat-shared": "1.3.0-dev.304",
|
|
148
|
+
"@epam/ai-dial-conversation-input": "1.3.0-dev.304",
|
|
149
|
+
"@epam/ai-dial-mcp-apps": "1.3.0-dev.304",
|
|
150
|
+
"@epam/ai-dial-projects": "1.3.0-dev.304",
|
|
151
|
+
"@epam/ai-dial-publish-panel": "1.3.0-dev.304",
|
|
152
|
+
"@epam/ai-dial-quotations": "1.3.0-dev.304",
|
|
153
153
|
"@epam/ai-dial-react-file-manager": "^0.4.0-dev.25",
|
|
154
|
-
"@epam/ai-dial-scheduled-tasks": "1.3.0-dev.
|
|
155
|
-
"@epam/ai-dial-share": "1.3.0-dev.
|
|
156
|
-
"@epam/ai-dial-skill-editor": "1.3.0-dev.
|
|
157
|
-
"@epam/ai-dial-source-panel": "1.3.0-dev.
|
|
154
|
+
"@epam/ai-dial-scheduled-tasks": "1.3.0-dev.304",
|
|
155
|
+
"@epam/ai-dial-share": "1.3.0-dev.304",
|
|
156
|
+
"@epam/ai-dial-skill-editor": "1.3.0-dev.304",
|
|
157
|
+
"@epam/ai-dial-source-panel": "1.3.0-dev.304",
|
|
158
158
|
"@epam/ai-dial-ui-kit": "^0.16.0-dev.67",
|
|
159
|
-
"@epam/ai-dial-usage-dashboard": "1.3.0-dev.
|
|
159
|
+
"@epam/ai-dial-usage-dashboard": "1.3.0-dev.304",
|
|
160
160
|
"@modelcontextprotocol/sdk": "^1.32.2",
|
|
161
161
|
"@epam/pdf-highlighter-kit": "^0.0.19"
|
|
162
162
|
},
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AttachmentDto, ConversationResponseDto, CreateConversationDto, CreateProjectResponseDto, ListProjectsResponseDto, ProjectArtifactListResponseDto, ProjectConversationListResponseDto, ProjectDetailsDto, RenameConversationResponseDto, UpdateProjectResponseDto } from '@epam/ai-dial-chat-api-client';
|
|
1
|
+
import { AttachmentDto, ConversationResponseDto, CreateConversationDto, CreateProjectResponseDto, ListProjectsResponseDto, ProjectArtifactListResponseDto, ProjectConversationListResponseDto, ProjectConversationTitlesResponseDto, ProjectDetailsDto, RenameConversationResponseDto, UpdateProjectResponseDto } from '@epam/ai-dial-chat-api-client';
|
|
2
2
|
import { RequestSkill } from '@epam/ai-dial-chat-shared';
|
|
3
3
|
/** A generated-client `Raw` answer, of which only the native response is read. */
|
|
4
4
|
interface RawApiResponse {
|
|
@@ -40,9 +40,13 @@ export interface ProjectsConfiguredClient {
|
|
|
40
40
|
}, options?: RequestInit) => Promise<RawApiResponse>;
|
|
41
41
|
listProjectConversations: (request: {
|
|
42
42
|
id: string;
|
|
43
|
-
limit?: number;
|
|
44
|
-
offset?: number;
|
|
45
43
|
}, options?: RequestInit) => Promise<ProjectConversationListResponseDto>;
|
|
44
|
+
getProjectConversationTitles: (request: {
|
|
45
|
+
id: string;
|
|
46
|
+
projectConversationTitlesBodyDto: {
|
|
47
|
+
names: string[];
|
|
48
|
+
};
|
|
49
|
+
}, options?: RequestInit) => Promise<ProjectConversationTitlesResponseDto>;
|
|
46
50
|
listProjectArtifacts: (request: {
|
|
47
51
|
id: string;
|
|
48
52
|
}, options?: RequestInit) => Promise<ProjectArtifactListResponseDto>;
|
|
@@ -110,13 +114,6 @@ export interface ProjectUpdateRequest {
|
|
|
110
114
|
/** The loaded project's `contentVersion`; a conversation written meanwhile does not change it. */
|
|
111
115
|
contentVersion: string;
|
|
112
116
|
}
|
|
113
|
-
/** One page of a project's conversations, newest first. */
|
|
114
|
-
export interface ProjectConversationListPage {
|
|
115
|
-
/** Page size, `1..100`; the BFF defaults to 50. */
|
|
116
|
-
limit?: number;
|
|
117
|
-
/** Conversations to skip; the next page starts at the count already loaded. */
|
|
118
|
-
offset?: number;
|
|
119
|
-
}
|
|
120
117
|
/** The first message of a new top-level or project conversation. */
|
|
121
118
|
export interface ConversationCreateRequest {
|
|
122
119
|
/** The first user message. */
|
|
@@ -143,7 +140,8 @@ export interface ProjectsApiClient {
|
|
|
143
140
|
downloadProjectContextFile: (id: string, fileName: string, signal?: AbortSignal) => Promise<Response>;
|
|
144
141
|
/** Lists the files the agents saved under the project's `artifacts/` folder, newest first. */
|
|
145
142
|
listProjectArtifacts: (projectId: string, signal?: AbortSignal) => Promise<ProjectArtifactListResponseDto>;
|
|
146
|
-
listProjectConversations: (projectId: string, signal?: AbortSignal
|
|
143
|
+
listProjectConversations: (projectId: string, signal?: AbortSignal) => Promise<ProjectConversationListResponseDto>;
|
|
144
|
+
getProjectConversationTitles: (projectId: string, names: string[], signal?: AbortSignal) => Promise<ProjectConversationTitlesResponseDto>;
|
|
147
145
|
createProjectConversation: (projectId: string, request: ConversationCreateRequest) => Promise<ConversationResponseDto>;
|
|
148
146
|
getProjectConversation: (conversationId: string, signal?: AbortSignal) => Promise<ConversationResponseDto>;
|
|
149
147
|
saveProjectConversation: (conversationId: string, conversation: ConversationResponseDto) => Promise<ConversationResponseDto>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects-api-client.d.ts","sourceRoot":"","sources":["../../src/project/projects-api-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,8BAA8B,EAC9B,kCAAkC,EAClC,iBAAiB,EACjB,6BAA6B,EAC7B,wBAAwB,EACzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,kFAAkF;AAClF,UAAU,cAAc;IACtB,GAAG,EAAE,QAAQ,CAAC;CACf;AAED,4FAA4F;AAC5F,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC1E,UAAU,EAAE,CACV,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EACvB,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAChC,aAAa,EAAE,CACb,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;KAChB,EACD,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACvC,aAAa,EAAE,CACb,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;KAChB,EACD,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACvC,aAAa,EAAE,CAAC,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,kBAAkB,EAAE,CAClB,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EACvB,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC,cAAc,CAAC,CAAC;IAC7B,sBAAsB,EAAE,CACtB,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EACzC,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC,cAAc,CAAC,CAAC;IAC7B,wBAAwB,EAAE,CACxB,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"projects-api-client.d.ts","sourceRoot":"","sources":["../../src/project/projects-api-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,10 +51,11 @@ var e = (e) => {
|
|
|
51
51
|
fileName: r
|
|
52
52
|
}, ...n(i))).raw,
|
|
53
53
|
listProjectArtifacts: (t, r) => e.listProjectArtifacts({ id: t }, ...n(r)),
|
|
54
|
-
listProjectConversations: (t, r
|
|
54
|
+
listProjectConversations: (t, r) => e.listProjectConversations({ id: t }, ...n(r)),
|
|
55
|
+
getProjectConversationTitles: (t, r, i) => e.getProjectConversationTitles({
|
|
55
56
|
id: t,
|
|
56
|
-
|
|
57
|
-
}, ...n(
|
|
57
|
+
projectConversationTitlesBodyDto: { names: r }
|
|
58
|
+
}, ...n(i)),
|
|
58
59
|
createProjectConversation: (t, n) => e.createProjectConversation({
|
|
59
60
|
id: t,
|
|
60
61
|
createConversationDto: r(n)
|
|
@@ -2,28 +2,30 @@ import { ProjectConversationListItem } from '@epam/ai-dial-projects';
|
|
|
2
2
|
import { ProjectsApiClient } from './projects-api-client';
|
|
3
3
|
/**
|
|
4
4
|
* Loads a project's conversations for its Chats list and keeps them in local
|
|
5
|
-
* state
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
5
|
+
* state. DIAL Core cannot page them in display order, so the whole list is
|
|
6
|
+
* read once per project (and on retry) and paged here: the list shows the
|
|
7
|
+
* first 20, and `loadMore` shows 20 more after reading the titles the list
|
|
8
|
+
* left pending. `refresh` silently re-reads the whole list for live updates,
|
|
9
|
+
* and rename, delete and `markViewed` update it in place. Requests are
|
|
10
|
+
* aborted when the project changes or the view unmounts. Rename, delete and
|
|
11
|
+
* `loadMore` reject on failure for the caller's toast.
|
|
10
12
|
*
|
|
11
13
|
* @param client - Configured project requests, from `createProjectsApiClient`; it must be referentially stable, because a new object reloads the list.
|
|
12
14
|
* @param projectId - The project's DIAL id, or `null` while none is known.
|
|
13
15
|
*/
|
|
14
|
-
export declare const useProjectConversations: (client: Pick<ProjectsApiClient, "listProjectConversations" | "renameProjectConversation" | "deleteProjectConversation" | "markProjectConversationViewed">, projectId: string | null) => {
|
|
15
|
-
retry: () => void;
|
|
16
|
-
loadMore: () => Promise<void>;
|
|
17
|
-
rename: (id: string, newTitle: string) => Promise<void>;
|
|
18
|
-
remove: (id: string) => Promise<void>;
|
|
19
|
-
refresh: () => Promise<void>;
|
|
20
|
-
markViewed: (id: string) => void;
|
|
16
|
+
export declare const useProjectConversations: (client: Pick<ProjectsApiClient, "listProjectConversations" | "getProjectConversationTitles" | "renameProjectConversation" | "deleteProjectConversation" | "markProjectConversationViewed">, projectId: string | null) => {
|
|
21
17
|
items: ProjectConversationListItem[];
|
|
22
18
|
isLoading: boolean;
|
|
23
19
|
hasError: boolean;
|
|
24
20
|
/** More conversations exist after `items`. */
|
|
25
21
|
hasMore: boolean;
|
|
26
|
-
/** The next
|
|
22
|
+
/** The titles of the next conversations are being read. */
|
|
27
23
|
isLoadingMore: boolean;
|
|
24
|
+
retry: () => void;
|
|
25
|
+
loadMore: () => Promise<void>;
|
|
26
|
+
rename: (id: string, newTitle: string) => Promise<void>;
|
|
27
|
+
remove: (id: string) => Promise<void>;
|
|
28
|
+
refresh: () => Promise<void>;
|
|
29
|
+
markViewed: (id: string) => void;
|
|
28
30
|
};
|
|
29
31
|
//# sourceMappingURL=use-project-conversations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-project-conversations.d.ts","sourceRoot":"","sources":["../../src/project/use-project-conversations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"use-project-conversations.d.ts","sourceRoot":"","sources":["../../src/project/use-project-conversations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA+F/D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uBAAuB,GAClC,QAAQ,IAAI,CACV,iBAAiB,EACf,0BAA0B,GAC1B,8BAA8B,GAC9B,2BAA2B,GAC3B,2BAA2B,GAC3B,+BAA+B,CAClC,EACD,WAAW,MAAM,GAAG,IAAI;;;;IA6NtB,8CAA8C;;IAE9C,2DAA2D;;;;iBA1ChD,MAAM,YAAY,MAAM;iBAaxB,MAAM;;qBAlCZ,MAAM;CAwEd,CAAC"}
|