@gooddata/sdk-ui-gen-ai 11.39.0-alpha.3 → 11.39.0
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/NOTICE
CHANGED
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
The following 3rd-party software packages may be used by or distributed with gooddata-ui-sdk. Any information relevant to third-party vendors listed below are collected using common, reasonable means.
|
|
9
9
|
|
|
10
|
-
Date generated: 2026-5-
|
|
10
|
+
Date generated: 2026-5-27
|
|
11
11
|
|
|
12
|
-
Revision ID:
|
|
12
|
+
Revision ID: cca91b63bcb24d8939c88b56da17c29f0346e9e2
|
|
13
13
|
|
|
14
14
|
================================================================================
|
|
15
15
|
================================================================================
|
|
@@ -38189,4 +38189,4 @@ POSSIBILITY OF SUCH DAMAGE.
|
|
|
38189
38189
|
--------------------------------------------------------------------------------
|
|
38190
38190
|
--------------------------------------------------------------------------------
|
|
38191
38191
|
|
|
38192
|
-
Report Generated by FOSSA on 2026-5-
|
|
38192
|
+
Report Generated by FOSSA on 2026-5-27
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
// (C) 2026 GoodData Corporation
|
|
3
|
-
import { useCallback, useMemo, useRef, useState, } from "react";
|
|
3
|
+
import { useCallback, useEffect, useMemo, useRef, useState, } from "react";
|
|
4
4
|
import cx from "classnames";
|
|
5
5
|
import { FormattedMessage, useIntl } from "react-intl";
|
|
6
6
|
import { connect, useSelector } from "react-redux";
|
|
@@ -218,21 +218,29 @@ function GenAIChatConversationsComponent({ setHistory, deleteConversation, pinCo
|
|
|
218
218
|
] }), closeLabel: intl.formatMessage({ id: "gd.gen-ai.conversations.close-label" }), onClickClose: () => setHistory({ isHistory: false }), onClickOutside: () => setHistory({ isHistory: false }), children: _jsx("div", { className: cx("gd-gen-ai-chat__window__conversations", {
|
|
219
219
|
"gd-gen-ai-chat__window__conversations--isFullscreen": isFullscreen,
|
|
220
220
|
"gd-gen-ai-chat__window__conversations--isSmallScreen": isSmallScreen,
|
|
221
|
-
}), children: _jsx(DrawerContent, { openedId: openedId, menuRef: menuRef, menuItems: menuItems, conversations: conversations ?? [], handleSelect: handleSelect, draggedConversation: draggedConversation, activeDropZone: activeDropZone, onDragStart: handleDragStart, onDragEnd: handleDragEnd, onDropZoneDragOver: handleDropZoneDragOver, onDropZoneDragLeave: handleDropZoneDragLeave, onDropZoneDrop: handleDropZoneDrop, onMenuUnhandledKeyDown: handleMenuUnhandledKeyDown }) }) }), conversationToDelete ? (_jsx(ConversationDeleteDialog, { conversation: conversationToDelete, onClose: handleDeleteCancel, onDelete: handleDeleteSubmit })) : null, conversationToRename ? (_jsx(ConversationRenameDialog, { conversation: conversationToRename, onClose: handleRenameCancel, onRename: handleRenameSubmit })) : null] }));
|
|
221
|
+
}), children: _jsx(DrawerContent, { isOpen: isHistory, openedId: openedId, selectedId: currentConversation?.localId, menuRef: menuRef, menuItems: menuItems, conversations: conversations ?? [], handleSelect: handleSelect, draggedConversation: draggedConversation, activeDropZone: activeDropZone, onDragStart: handleDragStart, onDragEnd: handleDragEnd, onDropZoneDragOver: handleDropZoneDragOver, onDropZoneDragLeave: handleDropZoneDragLeave, onDropZoneDrop: handleDropZoneDrop, onMenuUnhandledKeyDown: handleMenuUnhandledKeyDown }) }) }), conversationToDelete ? (_jsx(ConversationDeleteDialog, { conversation: conversationToDelete, onClose: handleDeleteCancel, onDelete: handleDeleteSubmit })) : null, conversationToRename ? (_jsx(ConversationRenameDialog, { conversation: conversationToRename, onClose: handleRenameCancel, onRename: handleRenameSubmit })) : null] }));
|
|
222
222
|
}
|
|
223
|
-
function DrawerContent({ openedId, menuRef, conversations, menuItems, handleSelect, draggedConversation, activeDropZone, onDragStart, onDragEnd, onDropZoneDragOver, onDropZoneDragLeave, onDropZoneDrop, onMenuUnhandledKeyDown, }) {
|
|
223
|
+
function DrawerContent({ isOpen, openedId, selectedId, menuRef, conversations, menuItems, handleSelect, draggedConversation, activeDropZone, onDragStart, onDragEnd, onDropZoneDragOver, onDropZoneDragLeave, onDropZoneDrop, onMenuUnhandledKeyDown, }) {
|
|
224
224
|
const intl = useIntl();
|
|
225
|
+
const conversationsListRef = useRef(null);
|
|
225
226
|
const pinnedItems = useMemo(() => {
|
|
226
227
|
return menuItems.filter((item) => item.id === ConversationDateGroup.PINNED);
|
|
227
228
|
}, [menuItems]);
|
|
228
229
|
const restItems = useMemo(() => {
|
|
229
230
|
return menuItems.filter((item) => item.id !== ConversationDateGroup.PINNED);
|
|
230
231
|
}, [menuItems]);
|
|
232
|
+
useEffect(() => {
|
|
233
|
+
if (!isOpen || !selectedId) {
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
const selectedItem = conversationsListRef.current?.querySelector(`[data-conversation-id="${selectedId}"]`);
|
|
237
|
+
selectedItem?.scrollIntoView({ block: "nearest" });
|
|
238
|
+
}, [isOpen, selectedId, menuItems]);
|
|
231
239
|
return (_jsx(_Fragment, { children: (conversations ?? []).length === 0 ? (_jsxs("div", { className: "gd-gen-ai-chat__window__conversations__empty", children: [
|
|
232
240
|
_jsx(UiIcon, { type: "history2", size: 20, color: "complementary-6" }), _jsx("div", { className: "gd-gen-ai-chat__window__conversations__empty__text", children: _jsx(FormattedMessage, { id: "gd.gen-ai.conversations.empty", values: {
|
|
233
241
|
br: _jsx("br", {}),
|
|
234
242
|
} }) })
|
|
235
|
-
] })) : (_jsxs("div", { className: "gd-gen-ai-chat__window__conversations__list", children: [
|
|
243
|
+
] })) : (_jsxs("div", { className: "gd-gen-ai-chat__window__conversations__list", ref: conversationsListRef, children: [
|
|
236
244
|
_jsxs("div", { className: "gd-gen-ai-chat__window__conversations__drop-group", onDragLeave: onDropZoneDragLeave, onDragOver: (event) => onDropZoneDragOver("pin", event), onDrop: (event) => onDropZoneDrop("pin", event), children: [
|
|
237
245
|
_jsx("div", { className: cx("gd-gen-ai-chat__window__conversations__drop-placeholder", {
|
|
238
246
|
isDragging: activeDropZone === "body" && !draggedConversation?.pinned,
|
|
@@ -2,8 +2,10 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
// (C) 2025-2026 GoodData Corporation
|
|
3
3
|
import { useCallback, useId } from "react";
|
|
4
4
|
import { useIntl } from "react-intl";
|
|
5
|
+
import { useSelector } from "react-redux";
|
|
5
6
|
import { isSemanticSearchRelationship, isSemanticSearchResultItem } from "@gooddata/sdk-model";
|
|
6
7
|
import { LeveledSearchTreeView, SemanticSearchIntlProvider, buildSemanticSearchTreeViewItems, } from "@gooddata/sdk-ui-semantic-search/internal";
|
|
8
|
+
import { settingsSelector } from "../../../store/chatWindow/chatWindowSelectors.js";
|
|
7
9
|
import { useConfig } from "../../ConfigContext.js";
|
|
8
10
|
export function SemanticSearchTreeView(props) {
|
|
9
11
|
const intl = useIntl();
|
|
@@ -12,7 +14,9 @@ export function SemanticSearchTreeView(props) {
|
|
|
12
14
|
export function SemanticSearchTreeViewImpl({ workspace, content, maxHeight }) {
|
|
13
15
|
const intl = useIntl();
|
|
14
16
|
const { canFullControl, canManage, canAnalyze, linkHandler } = useConfig();
|
|
17
|
+
const settings = useSelector(settingsSelector);
|
|
15
18
|
const canEdit = canFullControl || canManage || canAnalyze;
|
|
19
|
+
const useHostMetricEditor = Boolean(settings?.enableShellApplication_metricEditor);
|
|
16
20
|
const items = buildSemanticSearchTreeViewItems({
|
|
17
21
|
intl,
|
|
18
22
|
workspace,
|
|
@@ -20,6 +24,7 @@ export function SemanticSearchTreeViewImpl({ workspace, content, maxHeight }) {
|
|
|
20
24
|
relationships: content.relationships,
|
|
21
25
|
threshold: 0, // Keep all items for now
|
|
22
26
|
canEdit,
|
|
27
|
+
uiPathOptions: { useHostedMetricEditor: useHostMetricEditor },
|
|
23
28
|
});
|
|
24
29
|
const id = useId();
|
|
25
30
|
const treeViewId = `gen-ai-chat-${id}-treeview`;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-ui-gen-ai",
|
|
3
|
-
"version": "11.39.0
|
|
3
|
+
"version": "11.39.0",
|
|
4
4
|
"description": "GoodData GenAI SDK",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "GoodData Corporation",
|
|
@@ -56,18 +56,18 @@
|
|
|
56
56
|
"reselect": "5.1.1",
|
|
57
57
|
"tslib": "2.8.1",
|
|
58
58
|
"uuid": "11.1.0",
|
|
59
|
-
"@gooddata/api-client-tiger": "11.39.0
|
|
60
|
-
"@gooddata/sdk-backend-spi": "11.39.0
|
|
61
|
-
"@gooddata/sdk-
|
|
62
|
-
"@gooddata/sdk-
|
|
63
|
-
"@gooddata/sdk-ui
|
|
64
|
-
"@gooddata/sdk-ui-dashboard": "11.39.0
|
|
65
|
-
"@gooddata/sdk-ui-filters": "11.39.0
|
|
66
|
-
"@gooddata/sdk-ui-
|
|
67
|
-
"@gooddata/sdk-ui-
|
|
68
|
-
"@gooddata/sdk-ui-
|
|
69
|
-
"@gooddata/sdk-ui-
|
|
70
|
-
"@gooddata/util": "11.39.0
|
|
59
|
+
"@gooddata/api-client-tiger": "11.39.0",
|
|
60
|
+
"@gooddata/sdk-backend-spi": "11.39.0",
|
|
61
|
+
"@gooddata/sdk-model": "11.39.0",
|
|
62
|
+
"@gooddata/sdk-ui-charts": "11.39.0",
|
|
63
|
+
"@gooddata/sdk-ui": "11.39.0",
|
|
64
|
+
"@gooddata/sdk-ui-dashboard": "11.39.0",
|
|
65
|
+
"@gooddata/sdk-ui-filters": "11.39.0",
|
|
66
|
+
"@gooddata/sdk-ui-kit": "11.39.0",
|
|
67
|
+
"@gooddata/sdk-ui-pivot": "11.39.0",
|
|
68
|
+
"@gooddata/sdk-ui-semantic-search": "11.39.0",
|
|
69
|
+
"@gooddata/sdk-ui-theme-provider": "11.39.0",
|
|
70
|
+
"@gooddata/util": "11.39.0"
|
|
71
71
|
},
|
|
72
72
|
"devDependencies": {
|
|
73
73
|
"@microsoft/api-documenter": "^7.17.0",
|
|
@@ -110,13 +110,13 @@
|
|
|
110
110
|
"typescript": "5.9.3",
|
|
111
111
|
"vitest": "4.1.0",
|
|
112
112
|
"vitest-dom": "0.1.1",
|
|
113
|
-
"@gooddata/eslint-config": "11.39.0
|
|
114
|
-
"@gooddata/oxlint-config": "11.39.0
|
|
115
|
-
"@gooddata/i18n-toolkit": "11.39.0
|
|
116
|
-
"@gooddata/reference-workspace": "11.39.0
|
|
117
|
-
"@gooddata/sdk-backend-mockingbird": "11.39.0
|
|
118
|
-
"@gooddata/sdk-ui-theme-provider": "11.39.0
|
|
119
|
-
"@gooddata/stylelint-config": "11.39.0
|
|
113
|
+
"@gooddata/eslint-config": "11.39.0",
|
|
114
|
+
"@gooddata/oxlint-config": "11.39.0",
|
|
115
|
+
"@gooddata/i18n-toolkit": "11.39.0",
|
|
116
|
+
"@gooddata/reference-workspace": "11.39.0",
|
|
117
|
+
"@gooddata/sdk-backend-mockingbird": "11.39.0",
|
|
118
|
+
"@gooddata/sdk-ui-theme-provider": "11.39.0",
|
|
119
|
+
"@gooddata/stylelint-config": "11.39.0"
|
|
120
120
|
},
|
|
121
121
|
"peerDependencies": {
|
|
122
122
|
"react": "^18.0.0 || ^19.0.0",
|