@gooddata/sdk-ui-semantic-search 10.38.0-alpha.1 → 10.38.0-alpha.2
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/esm/SearchItem.d.ts +20 -0
- package/esm/SearchItem.d.ts.map +1 -0
- package/esm/SearchItem.js +28 -0
- package/esm/SearchItem.js.map +1 -0
- package/esm/SemanticSearch.d.ts.map +1 -1
- package/esm/SemanticSearch.js +32 -11
- package/esm/SemanticSearch.js.map +1 -1
- package/esm/SemanticSearchItem.d.ts +11 -0
- package/esm/SemanticSearchItem.d.ts.map +1 -0
- package/esm/SemanticSearchItem.js +17 -0
- package/esm/SemanticSearchItem.js.map +1 -0
- package/esm/hooks/useSearchMetrics.d.ts +3 -4
- package/esm/hooks/useSearchMetrics.d.ts.map +1 -1
- package/esm/hooks/useSearchMetrics.js +12 -9
- package/esm/hooks/useSearchMetrics.js.map +1 -1
- package/esm/internal/GroupResultCounter.d.ts +8 -0
- package/esm/internal/GroupResultCounter.d.ts.map +1 -0
- package/esm/internal/GroupResultCounter.js +15 -0
- package/esm/internal/GroupResultCounter.js.map +1 -0
- package/esm/internal/HistorySearchTreeView.d.ts +12 -0
- package/esm/internal/HistorySearchTreeView.d.ts.map +1 -0
- package/esm/internal/HistorySearchTreeView.js +30 -0
- package/esm/internal/HistorySearchTreeView.js.map +1 -0
- package/esm/internal/HistorySearchTreeViewItem.d.ts +7 -0
- package/esm/internal/HistorySearchTreeViewItem.d.ts.map +1 -0
- package/esm/internal/HistorySearchTreeViewItem.js +19 -0
- package/esm/internal/HistorySearchTreeViewItem.js.map +1 -0
- package/esm/internal/LeveledSearchTreeView.d.ts +22 -0
- package/esm/internal/LeveledSearchTreeView.d.ts.map +1 -0
- package/esm/internal/LeveledSearchTreeView.js +84 -0
- package/esm/internal/LeveledSearchTreeView.js.map +1 -0
- package/esm/internal/LeveledSearchTreeViewItem.d.ts +11 -0
- package/esm/internal/LeveledSearchTreeViewItem.d.ts.map +1 -0
- package/esm/internal/LeveledSearchTreeViewItem.js +24 -0
- package/esm/internal/LeveledSearchTreeViewItem.js.map +1 -0
- package/esm/internal/SearchItemDetails.d.ts +12 -0
- package/esm/internal/SearchItemDetails.d.ts.map +1 -0
- package/esm/{utils/renderDetails.js → internal/SearchItemDetails.js} +33 -27
- package/esm/internal/SearchItemDetails.js.map +1 -0
- package/esm/internal/SearchItemIcon.d.ts +13 -0
- package/esm/internal/SearchItemIcon.d.ts.map +1 -0
- package/esm/internal/SearchItemIcon.js +46 -0
- package/esm/internal/SearchItemIcon.js.map +1 -0
- package/esm/internal/SearchOverlay.d.ts +4 -5
- package/esm/internal/SearchOverlay.d.ts.map +1 -1
- package/esm/internal/SearchOverlay.js +58 -97
- package/esm/internal/SearchOverlay.js.map +1 -1
- package/esm/internal/UpdateDate.d.ts +2 -3
- package/esm/internal/UpdateDate.d.ts.map +1 -1
- package/esm/internal/UpdateDate.js +7 -5
- package/esm/internal/UpdateDate.js.map +1 -1
- package/esm/localization/bundles/en-US.json +16 -0
- package/esm/localization/bundles/en-US.localization-bundle.d.ts +4 -0
- package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/localization/bundles/en-US.localization-bundle.js +4 -0
- package/esm/localization/bundles/en-US.localization-bundle.js.map +1 -1
- package/esm/utils/getAriaLabel.d.ts +5 -0
- package/esm/utils/getAriaLabel.d.ts.map +1 -0
- package/esm/utils/getAriaLabel.js +27 -0
- package/esm/utils/getAriaLabel.js.map +1 -0
- package/esm/utils/searchItem.d.ts +8 -0
- package/esm/utils/searchItem.d.ts.map +1 -0
- package/esm/utils/searchItem.js +15 -0
- package/esm/utils/searchItem.js.map +1 -0
- package/package.json +13 -13
- package/styles/css/internal.css +62 -43
- package/styles/css/internal.css.map +1 -1
- package/styles/css/main.css +61 -23
- package/styles/css/main.css.map +1 -1
- package/styles/scss/internal.scss +1 -17
- package/styles/scss/main.scss +64 -16
- package/esm/ResultsItem.d.ts +0 -9
- package/esm/ResultsItem.d.ts.map +0 -1
- package/esm/ResultsItem.js +0 -16
- package/esm/ResultsItem.js.map +0 -1
- package/esm/SearchListItem.d.ts +0 -15
- package/esm/SearchListItem.d.ts.map +0 -1
- package/esm/SearchListItem.js +0 -30
- package/esm/SearchListItem.js.map +0 -1
- package/esm/SearchResultsDropdownList.d.ts +0 -36
- package/esm/SearchResultsDropdownList.d.ts.map +0 -1
- package/esm/SearchResultsDropdownList.js +0 -20
- package/esm/SearchResultsDropdownList.js.map +0 -1
- package/esm/internal/AnnotatedResultsItem.d.ts +0 -9
- package/esm/internal/AnnotatedResultsItem.d.ts.map +0 -1
- package/esm/internal/AnnotatedResultsItem.js +0 -26
- package/esm/internal/AnnotatedResultsItem.js.map +0 -1
- package/esm/internal/HistoryItem.d.ts +0 -11
- package/esm/internal/HistoryItem.d.ts.map +0 -1
- package/esm/internal/HistoryItem.js +0 -19
- package/esm/internal/HistoryItem.js.map +0 -1
- package/esm/internal/SearchList.d.ts +0 -30
- package/esm/internal/SearchList.d.ts.map +0 -1
- package/esm/internal/SearchList.js +0 -18
- package/esm/internal/SearchList.js.map +0 -1
- package/esm/types.d.ts +0 -34
- package/esm/types.d.ts.map +0 -1
- package/esm/types.js +0 -3
- package/esm/types.js.map +0 -1
- package/esm/utils/getAreaLabel.d.ts +0 -4
- package/esm/utils/getAreaLabel.d.ts.map +0 -1
- package/esm/utils/getAreaLabel.js +0 -15
- package/esm/utils/getAreaLabel.js.map +0 -1
- package/esm/utils/renderDetails.d.ts +0 -8
- package/esm/utils/renderDetails.d.ts.map +0 -1
- package/esm/utils/renderDetails.js.map +0 -1
- package/esm/utils/renderItemIcon.d.ts +0 -8
- package/esm/utils/renderItemIcon.d.ts.map +0 -1
- package/esm/utils/renderItemIcon.js +0 -44
- package/esm/utils/renderItemIcon.js.map +0 -1
- package/esm/utils/renderLock.d.ts +0 -5
- package/esm/utils/renderLock.d.ts.map +0 -1
- package/esm/utils/renderLock.js +0 -9
- package/esm/utils/renderLock.js.map +0 -1
package/esm/ResultsItem.js
DELETED
@@ -1,16 +0,0 @@
|
|
1
|
-
// (C) 2024 GoodData Corporation
|
2
|
-
import * as React from "react";
|
3
|
-
import { renderItemIcon } from "./utils/renderItemIcon.js";
|
4
|
-
import { renderDetails } from "./utils/renderDetails.js";
|
5
|
-
import { SearchListItem } from "./SearchListItem.js";
|
6
|
-
import { getAreaLabel } from "./utils/getAreaLabel.js";
|
7
|
-
/**
|
8
|
-
* A single result item in the search results.
|
9
|
-
* @internal
|
10
|
-
*/
|
11
|
-
export const ResultsItem = (props) => {
|
12
|
-
return (React.createElement(SearchListItem, { ...props, renderIcon: renderItemIcon, renderDetails: renderDetails, getAreaLabel: getAreaLabel },
|
13
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text__row" },
|
14
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text__ellipsis" }, props.listItem.item.title))));
|
15
|
-
};
|
16
|
-
//# sourceMappingURL=ResultsItem.js.map
|
package/esm/ResultsItem.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"ResultsItem.js","sourceRoot":"","sources":["../src/ResultsItem.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAuD,CAAC,KAAK,EAAE,EAAE;IACrF,OAAO,CACH,oBAAC,cAAc,OACP,KAAK,EACT,UAAU,EAAE,cAAc,EAC1B,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;QAE1B,8BAAM,SAAS,EAAC,6CAA6C;YACzD,8BAAM,SAAS,EAAC,kDAAkD,IAC7D,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CACvB,CACJ,CACM,CACpB,CAAC;AACN,CAAC,CAAC"}
|
package/esm/SearchListItem.d.ts
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
import * as React from "react";
|
2
|
-
import { ITheme } from "@gooddata/sdk-model";
|
3
|
-
import { ListItem, ListItemProps } from "./types.js";
|
4
|
-
export type SearchListItemProps<T> = ListItemProps<T> & React.PropsWithChildren<{
|
5
|
-
renderIcon: (item: ListItem<T>, theme?: ITheme) => React.ReactElement;
|
6
|
-
renderDetails?: (item: ListItem<T>, theme?: ITheme) => React.ReactElement;
|
7
|
-
getAreaLabel?: (item: ListItem<T>) => string;
|
8
|
-
className?: string;
|
9
|
-
}>;
|
10
|
-
/**
|
11
|
-
* A single result item in the search results.
|
12
|
-
* @internal
|
13
|
-
*/
|
14
|
-
export declare const SearchListItem: <T>({ listItem, isActive, setActive, onSelect, renderIcon, renderDetails, getAreaLabel, className, children, }: SearchListItemProps<T>) => React.JSX.Element;
|
15
|
-
//# sourceMappingURL=SearchListItem.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"SearchListItem.d.ts","sourceRoot":"","sources":["../src/SearchListItem.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGrD,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,GACjD,KAAK,CAAC,iBAAiB,CAAC;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,YAAY,CAAC;IACtE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,YAAY,CAAC;IAC1E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC,CAAC;AAEP;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,CAAC,EAAG,4GAUhC,mBAAmB,CAAC,CAAC,CAAC,sBAiCxB,CAAC"}
|
package/esm/SearchListItem.js
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
// (C) 2024-2025 GoodData Corporation
|
2
|
-
import * as React from "react";
|
3
|
-
import { useTheme } from "@gooddata/sdk-ui-theme-provider";
|
4
|
-
import classnames from "classnames";
|
5
|
-
/**
|
6
|
-
* A single result item in the search results.
|
7
|
-
* @internal
|
8
|
-
*/
|
9
|
-
export const SearchListItem = ({ listItem, isActive, setActive, onSelect, renderIcon, renderDetails, getAreaLabel, className, children, }) => {
|
10
|
-
const theme = useTheme();
|
11
|
-
const onPointerOver = () => setActive(listItem);
|
12
|
-
const onClick = (e) => {
|
13
|
-
if (e.button < 2) {
|
14
|
-
// Only report left and middle clicks
|
15
|
-
onSelect(listItem, e.nativeEvent);
|
16
|
-
}
|
17
|
-
};
|
18
|
-
const Tag = listItem.url ? "a" : "span";
|
19
|
-
const wrapperClassName = classnames(className, {
|
20
|
-
"gd-semantic-search__results-item": true,
|
21
|
-
"gd-semantic-search__results-item--active": isActive,
|
22
|
-
});
|
23
|
-
const areaLabel = getAreaLabel?.(listItem);
|
24
|
-
return (React.createElement("span", { className: wrapperClassName },
|
25
|
-
React.createElement(Tag, { "aria-label": areaLabel, href: listItem.url, className: "gd-semantic-search__results-item__content", onPointerOver: onPointerOver, onClick: onClick, onAuxClick: onClick },
|
26
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__icon" }, renderIcon(listItem, theme)),
|
27
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text" }, children),
|
28
|
-
renderDetails && isActive ? renderDetails(listItem, theme) : null)));
|
29
|
-
};
|
30
|
-
//# sourceMappingURL=SearchListItem.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"SearchListItem.js","sourceRoot":"","sources":["../src/SearchListItem.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAE3D,OAAO,UAAU,MAAM,YAAY,CAAC;AAUpC;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAK,EAC/B,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,YAAY,EACZ,SAAS,EACT,QAAQ,GACa,EAAE,EAAE;IACzB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,CAAC,CAAmB,EAAE,EAAE;QACpC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,qCAAqC;YACrC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;QACtC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;IACxC,MAAM,gBAAgB,GAAG,UAAU,CAAC,SAAS,EAAE;QAC3C,kCAAkC,EAAE,IAAI;QACxC,0CAA0C,EAAE,QAAQ;KACvD,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE3C,OAAO,CACH,8BAAM,SAAS,EAAE,gBAAgB;QAC7B,oBAAC,GAAG,kBACY,SAAS,EACrB,IAAI,EAAE,QAAQ,CAAC,GAAG,EAClB,SAAS,EAAC,2CAA2C,EACrD,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,OAAO;YAEnB,8BAAM,SAAS,EAAC,wCAAwC,IAAE,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAQ;YAC7F,8BAAM,SAAS,EAAC,wCAAwC,IAAE,QAAQ,CAAQ;YACzE,aAAa,IAAI,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAChE,CACH,CACV,CAAC;AACN,CAAC,CAAC"}
|
@@ -1,36 +0,0 @@
|
|
1
|
-
import * as React from "react";
|
2
|
-
import { ISemanticSearchResultItem } from "@gooddata/sdk-model";
|
3
|
-
import { ListItem } from "./types.js";
|
4
|
-
/**
|
5
|
-
* Search results props.
|
6
|
-
* @internal
|
7
|
-
*/
|
8
|
-
type SearchResultsDropdownListProps = {
|
9
|
-
/**
|
10
|
-
* Search result items.
|
11
|
-
*/
|
12
|
-
searchResults: ListItem<ISemanticSearchResultItem>[];
|
13
|
-
/**
|
14
|
-
* Loading flag.
|
15
|
-
*/
|
16
|
-
searchLoading: boolean;
|
17
|
-
/**
|
18
|
-
* Mobile flag.
|
19
|
-
*/
|
20
|
-
isMobile: boolean;
|
21
|
-
/**
|
22
|
-
* Width of the dropdown.
|
23
|
-
*/
|
24
|
-
width: number;
|
25
|
-
/**
|
26
|
-
* Callback for item selection.
|
27
|
-
*/
|
28
|
-
onSelect: (item: ISemanticSearchResultItem) => void;
|
29
|
-
};
|
30
|
-
/**
|
31
|
-
* A dropdown list with the search results.
|
32
|
-
* @internal
|
33
|
-
*/
|
34
|
-
export declare const SearchResultsDropdownList: React.FC<SearchResultsDropdownListProps>;
|
35
|
-
export {};
|
36
|
-
//# sourceMappingURL=SearchResultsDropdownList.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"SearchResultsDropdownList.d.ts","sourceRoot":"","sources":["../src/SearchResultsDropdownList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAIhE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAKtC;;;GAGG;AACH,KAAK,8BAA8B,GAAG;IAClC;;OAEG;IACH,aAAa,EAAE,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;IACrD;;OAEG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,yBAAyB,KAAK,IAAI,CAAC;CACvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAiC9E,CAAC"}
|
@@ -1,20 +0,0 @@
|
|
1
|
-
// (C) 2024-2025 GoodData Corporation
|
2
|
-
import * as React from "react";
|
3
|
-
import { DropdownList } from "@gooddata/sdk-ui-kit";
|
4
|
-
import { ResultsItem } from "./ResultsItem.js";
|
5
|
-
import { useListScroll, useListSelector } from "./hooks/index.js";
|
6
|
-
const ITEM_HEIGHT = 50;
|
7
|
-
const MAX_ITEMS_UNSCROLLED = 5;
|
8
|
-
/**
|
9
|
-
* A dropdown list with the search results.
|
10
|
-
* @internal
|
11
|
-
*/
|
12
|
-
export const SearchResultsDropdownList = ({ searchResults, searchLoading, isMobile, width, onSelect, }) => {
|
13
|
-
const onListItemSelect = (item) => onSelect(item.item);
|
14
|
-
const [active, setActive, direction] = useListSelector(searchResults, onListItemSelect);
|
15
|
-
const [scrollToItem, scrollDirection] = useListScroll(active, direction);
|
16
|
-
return (React.createElement(DropdownList, { width: width, height: ITEM_HEIGHT * Math.min(searchResults.length, MAX_ITEMS_UNSCROLLED), isMobile: isMobile, isLoading: searchLoading, itemHeight: ITEM_HEIGHT, scrollToItem: scrollToItem, scrollDirection: scrollDirection, renderItem: ({ item }) => {
|
17
|
-
return (React.createElement(ResultsItem, { listItem: item, isActive: active === item, setActive: setActive, onSelect: onListItemSelect }));
|
18
|
-
}, items: searchResults }));
|
19
|
-
};
|
20
|
-
//# sourceMappingURL=SearchResultsDropdownList.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"SearchResultsDropdownList.js","sourceRoot":"","sources":["../src/SearchResultsDropdownList.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGlE,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,MAAM,oBAAoB,GAAG,CAAC,CAAC;AA6B/B;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAA6C,CAAC,EAChF,aAAa,EACb,aAAa,EACb,QAAQ,EACR,KAAK,EACL,QAAQ,GACX,EAAE,EAAE;IACD,MAAM,gBAAgB,GAAG,CAAC,IAAyC,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5F,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,eAAe,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;IACxF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEzE,OAAO,CACH,oBAAC,YAAY,IACT,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAC1E,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,aAAa,EACxB,UAAU,EAAE,WAAW,EACvB,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,EAChC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;YACrB,OAAO,CACH,oBAAC,WAAW,IACR,QAAQ,EAAE,IAAI,EACd,QAAQ,EAAE,MAAM,KAAK,IAAI,EACzB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,gBAAgB,GAC5B,CACL,CAAC;QACN,CAAC,EACD,KAAK,EAAE,aAAa,GACtB,CACL,CAAC;AACN,CAAC,CAAC"}
|
@@ -1,9 +0,0 @@
|
|
1
|
-
import * as React from "react";
|
2
|
-
import { ISemanticSearchResultItem } from "@gooddata/sdk-model";
|
3
|
-
import { ListItemProps } from "../types.js";
|
4
|
-
/**
|
5
|
-
* A single result item in the search results.
|
6
|
-
* @internal
|
7
|
-
*/
|
8
|
-
export declare const AnnotatedResultsItem: React.NamedExoticComponent<ListItemProps<ISemanticSearchResultItem>>;
|
9
|
-
//# sourceMappingURL=AnnotatedResultsItem.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"AnnotatedResultsItem.d.ts","sourceRoot":"","sources":["../../src/internal/AnnotatedResultsItem.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAuC5C;;;GAGG;AACH,eAAO,MAAM,oBAAoB,sEAAuC,CAAC"}
|
@@ -1,26 +0,0 @@
|
|
1
|
-
// (C) 2024 GoodData Corporation
|
2
|
-
import * as React from "react";
|
3
|
-
import { renderDetails } from "../utils/renderDetails.js";
|
4
|
-
import { renderItemIcon } from "../utils/renderItemIcon.js";
|
5
|
-
import { UpdatedDate } from "./UpdateDate.js";
|
6
|
-
import { renderLock } from "../utils/renderLock.js";
|
7
|
-
import { SearchListItem } from "../SearchListItem.js";
|
8
|
-
import { getAreaLabel } from "../utils/getAreaLabel.js";
|
9
|
-
const CoreAnnotatedResultsItem = (props) => {
|
10
|
-
const { listItem } = props;
|
11
|
-
const lockIcon = renderLock(listItem);
|
12
|
-
return (React.createElement(SearchListItem, { ...props, renderIcon: renderItemIcon, renderDetails: renderDetails, getAreaLabel: getAreaLabel },
|
13
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text__row" },
|
14
|
-
lockIcon,
|
15
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text__ellipsis" }, listItem.item.title)),
|
16
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text__row" },
|
17
|
-
listItem.parentRef ? (React.createElement("span", { className: "gd-semantic-search__results-item__text__ellipsis" }, listItem.parentRef.sourceObjectTitle)) : null,
|
18
|
-
React.createElement("span", null,
|
19
|
-
React.createElement(UpdatedDate, { listItem: listItem })))));
|
20
|
-
};
|
21
|
-
/**
|
22
|
-
* A single result item in the search results.
|
23
|
-
* @internal
|
24
|
-
*/
|
25
|
-
export const AnnotatedResultsItem = React.memo(CoreAnnotatedResultsItem);
|
26
|
-
//# sourceMappingURL=AnnotatedResultsItem.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"AnnotatedResultsItem.js","sourceRoot":"","sources":["../../src/internal/AnnotatedResultsItem.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,wBAAwB,GAAuD,CAAC,KAAK,EAAE,EAAE;IAC3F,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC3B,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAEtC,OAAO,CACH,oBAAC,cAAc,OACP,KAAK,EACT,UAAU,EAAE,cAAc,EAC1B,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY;QAE1B,8BAAM,SAAS,EAAC,6CAA6C;YACxD,QAAQ;YACT,8BAAM,SAAS,EAAC,kDAAkD,IAC7D,QAAQ,CAAC,IAAI,CAAC,KAAK,CACjB,CACJ;QACP,8BAAM,SAAS,EAAC,6CAA6C;YACxD,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAClB,8BAAM,SAAS,EAAC,kDAAkD,IAC7D,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAClC,CACV,CAAC,CAAC,CAAC,IAAI;YACR;gBACI,oBAAC,WAAW,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAChC,CACJ,CACM,CACpB,CAAC;AACN,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC"}
|
@@ -1,11 +0,0 @@
|
|
1
|
-
import * as React from "react";
|
2
|
-
import { ListItemProps } from "../types.js";
|
3
|
-
import { WrappedComponentProps } from "react-intl";
|
4
|
-
/**
|
5
|
-
* A single history item.
|
6
|
-
* @internal
|
7
|
-
*/
|
8
|
-
export declare const HistoryItem: React.FC<import("react-intl").WithIntlProps<ListItemProps<string> & WrappedComponentProps>> & {
|
9
|
-
WrappedComponent: React.ComponentType<ListItemProps<string> & WrappedComponentProps>;
|
10
|
-
};
|
11
|
-
//# sourceMappingURL=HistoryItem.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"HistoryItem.d.ts","sourceRoot":"","sources":["../../src/internal/HistoryItem.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAA6B,qBAAqB,EAAa,MAAM,YAAY,CAAC;AA8BzF;;;GAGG;AACH,eAAO,MAAM,WAAW;;CAAmC,CAAC"}
|
@@ -1,19 +0,0 @@
|
|
1
|
-
// (C) 2024 GoodData Corporation
|
2
|
-
import * as React from "react";
|
3
|
-
import { Icon } from "@gooddata/sdk-ui-kit";
|
4
|
-
import { SearchListItem } from "../SearchListItem.js";
|
5
|
-
import { defineMessage, injectIntl } from "react-intl";
|
6
|
-
const renderIcon = (_, theme) => (React.createElement(Icon.HistoryBack, { color: theme?.palette?.complementary?.c5 ?? "#B0BECA" }));
|
7
|
-
const previousSearch = defineMessage({ id: "semantic-search.previous-search" });
|
8
|
-
const getAreaLabel = (intl) => () => intl.formatMessage(previousSearch);
|
9
|
-
const HistoryItemComponent = ({ intl, ...props }) => {
|
10
|
-
return (React.createElement(SearchListItem, { ...props, renderIcon: renderIcon, getAreaLabel: getAreaLabel(intl), className: "gd-semantic-search__results-item--history" },
|
11
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text__row" },
|
12
|
-
React.createElement("span", { className: "gd-semantic-search__results-item__text__ellipsis" }, props.listItem.item))));
|
13
|
-
};
|
14
|
-
/**
|
15
|
-
* A single history item.
|
16
|
-
* @internal
|
17
|
-
*/
|
18
|
-
export const HistoryItem = injectIntl(HistoryItemComponent);
|
19
|
-
//# sourceMappingURL=HistoryItem.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"HistoryItem.js","sourceRoot":"","sources":["../../src/internal/HistoryItem.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAEhC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAoC,MAAM,YAAY,CAAC;AAEzF,MAAM,UAAU,GAAG,CAAC,CAAM,EAAE,KAAc,EAAE,EAAE,CAAC,CAC3C,oBAAC,IAAI,CAAC,WAAW,IAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,SAAS,GAAI,CAC9E,CAAC;AAEF,MAAM,cAAc,GAAG,aAAa,CAAC,EAAE,EAAE,EAAE,iCAAiC,EAAE,CAAC,CAAC;AAEhF,MAAM,YAAY,GAAG,CAAC,IAAe,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;AAEnF,MAAM,oBAAoB,GAA4D,CAAC,EACnF,IAAI,EACJ,GAAG,KAAK,EACX,EAAE,EAAE;IACD,OAAO,CACH,oBAAC,cAAc,OACP,KAAK,EACT,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,EAChC,SAAS,EAAC,2CAA2C;QAErD,8BAAM,SAAS,EAAC,6CAA6C;YACzD,8BAAM,SAAS,EAAC,kDAAkD,IAC7D,KAAK,CAAC,QAAQ,CAAC,IAAI,CACjB,CACJ,CACM,CACpB,CAAC;AACN,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC"}
|
@@ -1,30 +0,0 @@
|
|
1
|
-
import * as React from "react";
|
2
|
-
import { ListItem, ListItemProps } from "../types.js";
|
3
|
-
/**
|
4
|
-
* Search results props.
|
5
|
-
* @internal
|
6
|
-
*/
|
7
|
-
export type SearchListProps<T> = {
|
8
|
-
/**
|
9
|
-
* Search result items.
|
10
|
-
*/
|
11
|
-
items: ListItem<T>[];
|
12
|
-
/**
|
13
|
-
* Width of the list.
|
14
|
-
*/
|
15
|
-
width?: number;
|
16
|
-
/**
|
17
|
-
* Callback for item selection.
|
18
|
-
*/
|
19
|
-
onSelect: (item: ListItem<T>, e: MouseEvent | KeyboardEvent) => void;
|
20
|
-
/**
|
21
|
-
* Component to render the item.
|
22
|
-
*/
|
23
|
-
ItemComponent: React.ComponentType<ListItemProps<T>>;
|
24
|
-
};
|
25
|
-
/**
|
26
|
-
* A dropdown list with the search results.
|
27
|
-
* @internal
|
28
|
-
*/
|
29
|
-
export declare const SearchList: <T>({ items, width, onSelect, ItemComponent }: SearchListProps<T>) => React.JSX.Element;
|
30
|
-
//# sourceMappingURL=SearchList.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"SearchList.d.ts","sourceRoot":"","sources":["../../src/internal/SearchList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAKtD;;;GAGG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;IAC7B;;OAEG;IACH,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,aAAa,KAAK,IAAI,CAAC;IACrE;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;CACxD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,EAAG,2CAA2C,eAAe,CAAC,CAAC,CAAC,sBAwB3F,CAAC"}
|
@@ -1,18 +0,0 @@
|
|
1
|
-
// (C) 2024-2025 GoodData Corporation
|
2
|
-
import * as React from "react";
|
3
|
-
import { List } from "@gooddata/sdk-ui-kit";
|
4
|
-
import { useListScroll, useListSelector } from "../hooks/index.js";
|
5
|
-
const ITEM_HEIGHT = 50;
|
6
|
-
const MAX_ITEMS_UNSCROLLED = 10;
|
7
|
-
/**
|
8
|
-
* A dropdown list with the search results.
|
9
|
-
* @internal
|
10
|
-
*/
|
11
|
-
export const SearchList = ({ items, width, onSelect, ItemComponent }) => {
|
12
|
-
const [selected, setSelected, direction] = useListSelector(items, onSelect);
|
13
|
-
const [scrollToItem, scrollDirection] = useListScroll(selected, direction);
|
14
|
-
return (React.createElement(List, { width: width, height: ITEM_HEIGHT * Math.min(items.length, MAX_ITEMS_UNSCROLLED), itemHeight: ITEM_HEIGHT, scrollToItem: scrollToItem, scrollDirection: scrollDirection, renderItem: ({ item }) => {
|
15
|
-
return (React.createElement(ItemComponent, { listItem: item, isActive: item === selected, setActive: setSelected, onSelect: onSelect }));
|
16
|
-
}, items: items }));
|
17
|
-
};
|
18
|
-
//# sourceMappingURL=SearchList.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"SearchList.js","sourceRoot":"","sources":["../../src/internal/SearchList.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAErC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGnE,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAyBhC;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAsB,EAAE,EAAE;IAC5F,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC5E,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAE3E,OAAO,CACH,oBAAC,IAAI,IACD,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAClE,UAAU,EAAE,WAAW,EACvB,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,EAChC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;YACrB,OAAO,CACH,oBAAC,aAAa,IACV,QAAQ,EAAE,IAAI,EACd,QAAQ,EAAE,IAAI,KAAK,QAAQ,EAC3B,SAAS,EAAE,WAAW,EACtB,QAAQ,EAAE,QAAQ,GACpB,CACL,CAAC;QACN,CAAC,EACD,KAAK,EAAE,KAAK,GACd,CACL,CAAC;AACN,CAAC,CAAC"}
|
package/esm/types.d.ts
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
import { ISemanticSearchRelationship } from "@gooddata/sdk-model";
|
2
|
-
/**
|
3
|
-
* A wrapper type to handle search results rendering.
|
4
|
-
* @internal
|
5
|
-
*/
|
6
|
-
export type ListItem<T> = {
|
7
|
-
item: T;
|
8
|
-
url?: string;
|
9
|
-
parentRef?: ISemanticSearchRelationship;
|
10
|
-
isLocked?: boolean;
|
11
|
-
};
|
12
|
-
/**
|
13
|
-
* Shared props definition for all list items components.
|
14
|
-
* @internal
|
15
|
-
*/
|
16
|
-
export type ListItemProps<T> = {
|
17
|
-
/**
|
18
|
-
* The item to render.
|
19
|
-
*/
|
20
|
-
listItem: ListItem<T>;
|
21
|
-
/**
|
22
|
-
* Whether the item is active.
|
23
|
-
*/
|
24
|
-
isActive: boolean;
|
25
|
-
/**
|
26
|
-
* Set itself as an active item.
|
27
|
-
*/
|
28
|
-
setActive: (item: ListItem<T>) => void;
|
29
|
-
/**
|
30
|
-
* Set itself as selected item.
|
31
|
-
*/
|
32
|
-
onSelect: (item: ListItem<T>, e: MouseEvent) => void;
|
33
|
-
};
|
34
|
-
//# sourceMappingURL=types.d.ts.map
|
package/esm/types.d.ts.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAElE;;;GAGG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;IACtB,IAAI,EAAE,CAAC,CAAC;IACR,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,2BAA2B,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC3B;;OAEG;IACH,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,SAAS,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;CACxD,CAAC"}
|
package/esm/types.js
DELETED
package/esm/types.js.map
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,gCAAgC"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"getAreaLabel.d.ts","sourceRoot":"","sources":["../../src/utils/getAreaLabel.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,eAAO,MAAM,YAAY,GAAI,UAAU,QAAQ,CAAC,yBAAyB,CAAC,KAAG,MAG5E,CAAC"}
|
@@ -1,15 +0,0 @@
|
|
1
|
-
// (C) 2024-2025 GoodData Corporation
|
2
|
-
export const getAreaLabel = ({ item }) => {
|
3
|
-
const typeLabel = getTypeLabel(item);
|
4
|
-
return `${item.title}, ${typeLabel}`;
|
5
|
-
};
|
6
|
-
function getTypeLabel(item) {
|
7
|
-
if (item.type === "visualization") {
|
8
|
-
// Ideally we want to translate this properly, but there is no ready-made mapping in SDK.
|
9
|
-
// Consider doing it once l18n for this package is moved here.
|
10
|
-
// For area-labels, visualizationUrl minus the "local:" prefix is a good enough fallback.
|
11
|
-
return item.visualizationUrl?.replace("local:", "") ?? item.type;
|
12
|
-
}
|
13
|
-
return item.type;
|
14
|
-
}
|
15
|
-
//# sourceMappingURL=getAreaLabel.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"getAreaLabel.js","sourceRoot":"","sources":["../../src/utils/getAreaLabel.ts"],"names":[],"mappings":"AAAA,qCAAqC;AAKrC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,EAAuC,EAAU,EAAE;IAClF,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;AACzC,CAAC,CAAC;AAEF,SAAS,YAAY,CAAC,IAA+B;IACjD,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QAChC,yFAAyF;QACzF,8DAA8D;QAC9D,yFAAyF;QACzF,OAAO,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC;AACrB,CAAC"}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import { ISemanticSearchResultItem, ITheme } from "@gooddata/sdk-model";
|
2
|
-
import React from "react";
|
3
|
-
import { ListItem } from "../types.js";
|
4
|
-
/**
|
5
|
-
* Render the details of the item in a bubble.
|
6
|
-
*/
|
7
|
-
export declare const renderDetails: (listItem: ListItem<ISemanticSearchResultItem>, theme?: ITheme) => React.JSX.Element;
|
8
|
-
//# sourceMappingURL=renderDetails.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"renderDetails.d.ts","sourceRoot":"","sources":["../../src/utils/renderDetails.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAqDvC;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,UAAU,QAAQ,CAAC,yBAAyB,CAAC,EAAE,QAAQ,MAAM,sBAuB1F,CAAC"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"renderDetails.js","sourceRoot":"","sources":["../../src/utils/renderDetails.tsx"],"names":[],"mappings":"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"}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import { ISemanticSearchResultItem, ITheme } from "@gooddata/sdk-model";
|
2
|
-
import React from "react";
|
3
|
-
import { ListItem } from "../types.js";
|
4
|
-
/**
|
5
|
-
* Pick an icon according to the item type.
|
6
|
-
*/
|
7
|
-
export declare const renderItemIcon: ({ item }: ListItem<ISemanticSearchResultItem>, theme?: ITheme) => React.JSX.Element;
|
8
|
-
//# sourceMappingURL=renderItemIcon.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"renderItemIcon.d.ts","sourceRoot":"","sources":["../../src/utils/renderItemIcon.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAExE,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,UAAU,QAAQ,CAAC,yBAAyB,CAAC,EAAE,QAAQ,MAAM,sBA+D3F,CAAC"}
|
@@ -1,44 +0,0 @@
|
|
1
|
-
// (C) 2024-2025 GoodData Corporation
|
2
|
-
import { Icon, InsightIcon } from "@gooddata/sdk-ui-kit";
|
3
|
-
import React from "react";
|
4
|
-
/**
|
5
|
-
* Pick an icon according to the item type.
|
6
|
-
*/
|
7
|
-
export const renderItemIcon = ({ item }, theme) => {
|
8
|
-
const props = { color: theme?.palette?.complementary?.c5 ?? "#B0BECA", ariaHidden: true };
|
9
|
-
const Wrapper = ({ children }) => {
|
10
|
-
return (React.createElement("span", { "aria-label": item.type, role: "img" }, children));
|
11
|
-
};
|
12
|
-
switch (item.type) {
|
13
|
-
case "dashboard":
|
14
|
-
return (React.createElement(Wrapper, null,
|
15
|
-
React.createElement(Icon.Dashboard, { ...props })));
|
16
|
-
case "visualization":
|
17
|
-
return (React.createElement(Wrapper, null,
|
18
|
-
React.createElement(InsightIcon, { visualizationUrl: item.visualizationUrl, iconProps: props })));
|
19
|
-
case "dataset":
|
20
|
-
return (React.createElement(Wrapper, null,
|
21
|
-
React.createElement(Icon.Dataset, { ...props })));
|
22
|
-
case "attribute":
|
23
|
-
return (React.createElement(Wrapper, null,
|
24
|
-
React.createElement(Icon.Attribute, { ...props })));
|
25
|
-
case "label":
|
26
|
-
return (React.createElement(Wrapper, null,
|
27
|
-
React.createElement(Icon.Label, { ...props })));
|
28
|
-
case "fact":
|
29
|
-
return (React.createElement(Wrapper, null,
|
30
|
-
React.createElement(Icon.Fact, { ...props })));
|
31
|
-
case "metric":
|
32
|
-
return (React.createElement(Wrapper, null,
|
33
|
-
React.createElement(Icon.Metric, { ...props })));
|
34
|
-
case "date":
|
35
|
-
return (React.createElement(Wrapper, null,
|
36
|
-
React.createElement(Icon.Date, { ...props })));
|
37
|
-
default:
|
38
|
-
return exhaustiveCheck(item.type);
|
39
|
-
}
|
40
|
-
};
|
41
|
-
const exhaustiveCheck = (type) => {
|
42
|
-
throw new Error(`Unknown item type: ${type}`);
|
43
|
-
};
|
44
|
-
//# sourceMappingURL=renderItemIcon.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"renderItemIcon.js","sourceRoot":"","sources":["../../src/utils/renderItemIcon.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AAGrC,OAAO,EAAc,IAAI,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,IAAI,EAAuC,EAAE,KAAc,EAAE,EAAE;IAC5F,MAAM,KAAK,GAAe,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAEtG,MAAM,OAAO,GAAG,CAAC,EAAE,QAAQ,EAAqB,EAAE,EAAE;QAChD,OAAO,CACH,4CAAkB,IAAI,CAAC,IAAI,EAAE,IAAI,EAAC,KAAK,IAClC,QAAQ,CACN,CACV,CAAC;IACN,CAAC,CAAC;IAEF,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,KAAK,WAAW;YACZ,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,IAAI,CAAC,SAAS,OAAK,KAAK,GAAI,CACvB,CACb,CAAC;QACN,KAAK,eAAe;YAChB,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,WAAW,IAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,SAAS,EAAE,KAAK,GAAI,CACpE,CACb,CAAC;QACN,KAAK,SAAS;YACV,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,IAAI,CAAC,OAAO,OAAK,KAAK,GAAI,CACrB,CACb,CAAC;QACN,KAAK,WAAW;YACZ,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,IAAI,CAAC,SAAS,OAAK,KAAK,GAAI,CACvB,CACb,CAAC;QACN,KAAK,OAAO;YACR,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,IAAI,CAAC,KAAK,OAAK,KAAK,GAAI,CACnB,CACb,CAAC;QACN,KAAK,MAAM;YACP,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,IAAI,CAAC,IAAI,OAAK,KAAK,GAAI,CAClB,CACb,CAAC;QACN,KAAK,QAAQ;YACT,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,IAAI,CAAC,MAAM,OAAK,KAAK,GAAI,CACpB,CACb,CAAC;QACN,KAAK,MAAM;YACP,OAAO,CACH,oBAAC,OAAO;gBACJ,oBAAC,IAAI,CAAC,IAAI,OAAK,KAAK,GAAI,CAClB,CACb,CAAC;QACN;YACI,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,IAAW,EAAS,EAAE;IAC3C,MAAM,IAAI,KAAK,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC,CAAC"}
|
@@ -1,5 +0,0 @@
|
|
1
|
-
import * as React from "react";
|
2
|
-
import { ISemanticSearchResultItem } from "@gooddata/sdk-model";
|
3
|
-
import { ListItem } from "../types.js";
|
4
|
-
export declare const renderLock: (listItem: ListItem<ISemanticSearchResultItem>) => React.JSX.Element | null;
|
5
|
-
//# sourceMappingURL=renderLock.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"renderLock.d.ts","sourceRoot":"","sources":["../../src/utils/renderLock.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,eAAO,MAAM,UAAU,GAAI,UAAU,QAAQ,CAAC,yBAAyB,CAAC,6BAIvE,CAAC"}
|
package/esm/utils/renderLock.js
DELETED
@@ -1,9 +0,0 @@
|
|
1
|
-
// (C) 2024 GoodData Corporation
|
2
|
-
import * as React from "react";
|
3
|
-
import { Icon } from "@gooddata/sdk-ui-kit";
|
4
|
-
export const renderLock = (listItem) => {
|
5
|
-
if (!listItem.isLocked)
|
6
|
-
return null;
|
7
|
-
return React.createElement(Icon.Lock, { className: "gd-semantic-search__results-item__text__lock-icon" });
|
8
|
-
};
|
9
|
-
//# sourceMappingURL=renderLock.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"renderLock.js","sourceRoot":"","sources":["../../src/utils/renderLock.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAG5C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAA6C,EAAE,EAAE;IACxE,IAAI,CAAC,QAAQ,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEpC,OAAO,oBAAC,IAAI,CAAC,IAAI,IAAC,SAAS,EAAC,mDAAmD,GAAG,CAAC;AACvF,CAAC,CAAC"}
|