mirror of
https://github.com/portainer/portainer.git
synced 2025-07-24 15:59:41 +02:00
feat(ingress): autodetect ingress controllers EE-673 (#7712)
This commit is contained in:
parent
c96551e410
commit
89eda13eb3
48 changed files with 1252 additions and 1047 deletions
|
@ -54,6 +54,7 @@ interface Props<
|
|||
initialTableState?: Partial<TableState<D>>;
|
||||
isLoading?: boolean;
|
||||
totalCount?: number;
|
||||
description?: JSX.Element;
|
||||
}
|
||||
|
||||
export function Datatable<
|
||||
|
@ -74,6 +75,7 @@ export function Datatable<
|
|||
initialTableState = {},
|
||||
isLoading,
|
||||
totalCount = dataset.length,
|
||||
description,
|
||||
}: Props<D, TSettings>) {
|
||||
const [searchBarValue, setSearchBarValue] = useSearchBarState(storageKey);
|
||||
|
||||
|
@ -145,6 +147,7 @@ export function Datatable<
|
|||
label={titleOptions.title}
|
||||
icon={titleOptions.icon}
|
||||
featherIcon={titleOptions.featherIcon}
|
||||
description={description}
|
||||
>
|
||||
<SearchBar value={searchBarValue} onChange={setGlobalFilter} />
|
||||
{renderTableActions && (
|
||||
|
|
|
@ -20,8 +20,8 @@ export function SearchBar({
|
|||
const [searchValue, setSearchValue] = useDebounce(value, onChange);
|
||||
|
||||
return (
|
||||
<div className="searchBar items-center flex">
|
||||
<Search className="searchIcon feather" />
|
||||
<div className="searchBar items-center flex min-w-[90px]">
|
||||
<Search className="searchIcon feather shrink-0" />
|
||||
<input
|
||||
type="text"
|
||||
className="searchInput"
|
||||
|
|
|
@ -22,7 +22,7 @@ export function TableHeaderCell({
|
|||
render,
|
||||
onSortClick,
|
||||
isSorted,
|
||||
isSortedDesc,
|
||||
isSortedDesc = true,
|
||||
canFilter,
|
||||
renderFilter,
|
||||
}: Props) {
|
||||
|
@ -55,7 +55,7 @@ function SortWrapper({
|
|||
children,
|
||||
onClick = () => {},
|
||||
isSorted,
|
||||
isSortedDesc,
|
||||
isSortedDesc = true,
|
||||
}: PropsWithChildren<SortWrapperProps>) {
|
||||
if (!canSort) {
|
||||
return <>{children}</>;
|
||||
|
@ -93,7 +93,7 @@ export function TableColumnHeaderAngular({
|
|||
canSort,
|
||||
isSorted,
|
||||
colTitle,
|
||||
isSortedDesc,
|
||||
isSortedDesc = true,
|
||||
}: TableColumnHeaderAngularProps) {
|
||||
return (
|
||||
<div className="flex flex-row flex-nowrap h-full">
|
||||
|
|
|
@ -6,6 +6,7 @@ interface Props {
|
|||
icon?: ReactNode | ComponentType<unknown>;
|
||||
featherIcon?: boolean;
|
||||
label: string;
|
||||
description?: JSX.Element;
|
||||
}
|
||||
|
||||
export function TableTitle({
|
||||
|
@ -13,23 +14,27 @@ export function TableTitle({
|
|||
featherIcon,
|
||||
label,
|
||||
children,
|
||||
description,
|
||||
}: PropsWithChildren<Props>) {
|
||||
return (
|
||||
<div className="toolBar">
|
||||
<div className="toolBarTitle">
|
||||
{icon && (
|
||||
<div className="widget-icon">
|
||||
<Icon
|
||||
icon={icon}
|
||||
feather={featherIcon}
|
||||
className="space-right feather"
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
<div className="toolBar flex-col">
|
||||
<div className="flex gap-1 p-0 w-full items-center">
|
||||
<div className="toolBarTitle">
|
||||
{icon && (
|
||||
<div className="widget-icon">
|
||||
<Icon
|
||||
icon={icon}
|
||||
feather={featherIcon}
|
||||
className="space-right feather"
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
|
||||
{label}
|
||||
{label}
|
||||
</div>
|
||||
{children}
|
||||
</div>
|
||||
{children}
|
||||
{description && description}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue