@antscorp/antsomi-ui 1.3.5-beta.577 → 1.3.5-beta.579

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.
@@ -85,8 +85,8 @@ export const SearchPopover = props => {
85
85
  });
86
86
  }, [isClientSearch, itemSearchRender, searchList, searchValue]);
87
87
  // Handlers
88
- const handleAddFilter = () => {
89
- onAddFilter(searchValue);
88
+ const handleAddFilter = (value) => {
89
+ onAddFilter(value || searchValue);
90
90
  setState(prev => (Object.assign(Object.assign({}, prev), { isOpenPopover: false, searchValue: '' })));
91
91
  };
92
92
  // Renderers
@@ -117,8 +117,8 @@ export const SearchPopover = props => {
117
117
  React.createElement(Input.CustomSearch, { value: searchValue, placeholder: t(translations.global.search).toString(), onAfterChange: searchValue => {
118
118
  setState(prev => (Object.assign(Object.assign({}, prev), { searchValue })));
119
119
  onSearch(searchValue);
120
- }, onPressEnter: () => {
121
- handleAddFilter();
120
+ }, onPressEnter: e => {
121
+ handleAddFilter(e.target.value);
122
122
  } }),
123
123
  React.createElement(Divider, { style: { margin: '8px 0px' } }),
124
124
  renderFilterSection(),
@@ -126,5 +126,9 @@ export const SearchPopover = props => {
126
126
  return (React.createElement(Popover, Object.assign({ open: isOpenPopover, content: content, overlayInnerStyle: { width: 300, padding: 0 }, trigger: ['click'], arrow: false, placement: "bottomRight" }, restProps, { onOpenChange: open => {
127
127
  // Reset search value to empty when close popover
128
128
  setState(prev => (Object.assign(Object.assign(Object.assign({}, prev), { isOpenPopover: open }), (!open && { searchValue: '' }))));
129
+ // Clear search when close popover
130
+ if (!open) {
131
+ onSearch('');
132
+ }
129
133
  } }), children));
130
134
  };
@@ -10,10 +10,10 @@ import { CreateButton, HomeMenuWrapper, ModalWrapper } from './styled';
10
10
  // Hooks
11
11
  import { useHomeMenu } from './useHomeMenu';
12
12
  export const HomeMenu = memo(props => {
13
- const { children, removedDashboardId, isDashboardRemoving, isRecommendation, setRemovedDashboardId, onCreateNewReport, onMenuClick, onRemoveDashboard, } = useHomeMenu(props);
13
+ const { children, removedDashboardId, isDashboardRemoving, isRecommendation, showCreateButton, setRemovedDashboardId, onCreateNewReport, onMenuClick, onRemoveDashboard, } = useHomeMenu(props);
14
14
  return (React.createElement(React.Fragment, null,
15
15
  React.createElement(HomeMenuWrapper, { gap: 10, vertical: true },
16
- !isRecommendation && (React.createElement(CreateButton, { type: "primary", onClick: onCreateNewReport },
16
+ !isRecommendation && showCreateButton && (React.createElement(CreateButton, { type: "primary", onClick: onCreateNewReport },
17
17
  React.createElement(Flex, { gap: 10, align: "center" },
18
18
  React.createElement(Icon, { type: "icon-ants-plus-slim", style: { fontSize: 14 } }),
19
19
  React.createElement("span", null, "Create")))),
@@ -5,6 +5,7 @@ export declare const useHomeMenu: (props: HomeMenuProps) => {
5
5
  removedDashboardId: string;
6
6
  isDashboardRemoving: boolean;
7
7
  isRecommendation: boolean | undefined;
8
+ showCreateButton: boolean;
8
9
  setRemovedDashboardId: import("react").Dispatch<import("react").SetStateAction<string>>;
9
10
  onCreateNewReport: import("react").MouseEventHandler<HTMLElement>;
10
11
  onOptionCallback: (args: {
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  import { useCallback, useMemo, useState } from 'react';
12
12
  // Constants
13
13
  import { CONFIG_OPTIONS } from './constants';
14
- import { HOME_REPORT_ROUTES, HOME_ROUTE } from '../../constants';
14
+ import { HOME_MENU_ITEMS, HOME_REPORT_ROUTES, HOME_ROUTE } from '../../constants';
15
15
  import { API_RESPONSE_CODE, CDP_API, CDP_ROUTE } from '@antscorp/antsomi-ui/es/constants';
16
16
  // Utils
17
17
  import { getGeneratePath, getMenuItem } from '../../utils';
@@ -36,6 +36,10 @@ export const useHomeMenu = (props) => {
36
36
  const onClickCreateDashboard = useLayoutStore(store => store.state.leftMenu.onClickCreateDashboard);
37
37
  const [removedDashboardId, setRemovedDashboardId] = useState('');
38
38
  const urlParams = useMemo(() => new URLSearchParams(search), [search]);
39
+ const showCreateButton = useMemo(() => {
40
+ const menuItemList = isHover ? appHoverMenuChildren : appMenuChildren;
41
+ return !!(menuItemList === null || menuItemList === void 0 ? void 0 : menuItemList.find(item => item.menu_item_code === HOME_MENU_ITEMS.DASHBOARD));
42
+ }, [appHoverMenuChildren, appMenuChildren, isHover]);
39
43
  const { mutateAsync: removeDashboard, isLoading: isDashboardRemoving } = useRemoveDashboard();
40
44
  const onOptionCallback = useCallback((args) => {
41
45
  const { optionKey, menuItemKey } = args;
@@ -126,6 +130,7 @@ export const useHomeMenu = (props) => {
126
130
  removedDashboardId,
127
131
  isDashboardRemoving,
128
132
  isRecommendation,
133
+ showCreateButton,
129
134
  setRemovedDashboardId,
130
135
  onCreateNewReport,
131
136
  onOptionCallback,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antscorp/antsomi-ui",
3
- "version": "1.3.5-beta.577",
3
+ "version": "1.3.5-beta.579",
4
4
  "description": "An enterprise-class UI design language and React UI library.",
5
5
  "sideEffects": [
6
6
  "dist/*",