UNPKG

@craftercms/studio-ui

Version:

Services, components, models & utils to build CrafterCMS authoring extensions.

64 lines (62 loc) 2.62 kB
/* * Copyright (C) 2007-2022 Crafter Software Corporation. All Rights Reserved. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 as published by * the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ import React from 'react'; import { ElasticParams, Filter, MediaItem, SearchResult } from '../../models/Search'; import { CheckedFilter } from '../Search/utils'; import LookupTable from '../../models/LookupTable'; import { AllItemActions } from '../../models/Item'; import { ContextMenuOption } from '../ContextMenu'; import ApiResponse from '../../models/ApiResponse'; export interface SearchUIProps { selectedPath: string; selected: string[]; selectionOptions: ContextMenuOption[]; guestBase: string; sortBy?: string; sortOrder?: string; keyword: string; mode: 'select' | 'default'; drawerOpen: boolean; embedded: boolean; desktopScreen: boolean; currentView: 'grid' | 'list'; searchResults: SearchResult; areAllSelected: boolean; checkedFilters: LookupTable<CheckedFilter>; searchParameters: ElasticParams; error: ApiResponse; isFetching: boolean; onActionClicked(option: AllItemActions, event: React.MouseEvent<HTMLButtonElement, MouseEvent>): void; handleSelectAll(checked: any): void; onSelectedPathChanges(path: string): void; onCheckedFiltersChanges(checkedFilters: LookupTable<CheckedFilter>): any; clearFilter(facet: string): void; clearFilters(): void; handleSearchKeyword(keyword: string): void; handleChangeView(): void; toggleDrawer(): void; handleFilterChange(filter: Filter, isFilter?: boolean): void; handleChangePage(event: React.MouseEvent<HTMLButtonElement, MouseEvent> | null, newPage: number): void; handleChangeRowsPerPage(event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>): void; handleSelect(path: string, isSelected: boolean): void; onPreview(item: MediaItem): void; onHeaderButtonClick(event: any, item: MediaItem): void; handleClearSelected(): void; onClose(): void; onAcceptSelection?(items: string[]): void; } export declare function SearchUI(props: SearchUIProps): React.JSX.Element; export default SearchUI;