mirror of
https://github.com/portainer/portainer.git
synced 2025-07-20 13:59:40 +02:00
* port services from ee * fix external link * post review improvements * remove applications-ports-datatable * minor post review updates * add services help url * post review update * more post review updates * post review updates * rename index to component * fix external ip display and sorting * fix external apps tag * fix ingress screen time format * use uid for row id. Prevent blank link * fix some missing bits ported from EE * match ee * fix display of show system resources * remove icon next to service type
61 lines
1.5 KiB
TypeScript
61 lines
1.5 KiB
TypeScript
import { TableSettingsMenuAutoRefresh } from '@@/datatables/TableSettingsMenuAutoRefresh';
|
|
import { Checkbox } from '@@/form-components/Checkbox';
|
|
import {
|
|
BasicTableSettings,
|
|
RefreshableTableSettings,
|
|
ZustandSetFunc,
|
|
} from '@@/datatables/types';
|
|
|
|
interface SystemResourcesTableSettings {
|
|
showSystemResources: boolean;
|
|
setShowSystemResources: (value: boolean) => void;
|
|
}
|
|
|
|
export interface TableSettings
|
|
extends BasicTableSettings,
|
|
RefreshableTableSettings,
|
|
SystemResourcesTableSettings {}
|
|
|
|
export function systemResourcesSettings(
|
|
set: ZustandSetFunc<SystemResourcesTableSettings>
|
|
): SystemResourcesTableSettings {
|
|
return {
|
|
showSystemResources: false,
|
|
setShowSystemResources(showSystemResources: boolean) {
|
|
set({
|
|
showSystemResources,
|
|
});
|
|
},
|
|
};
|
|
}
|
|
|
|
interface Props {
|
|
settings: TableSettings;
|
|
hideShowSystemResources?: boolean;
|
|
}
|
|
|
|
export function DefaultDatatableSettings({
|
|
settings,
|
|
hideShowSystemResources = false,
|
|
}: Props) {
|
|
return (
|
|
<>
|
|
{!hideShowSystemResources && (
|
|
<Checkbox
|
|
id="show-system-resources"
|
|
label="Show system resources"
|
|
checked={settings.showSystemResources}
|
|
onChange={(e) => settings.setShowSystemResources(e.target.checked)}
|
|
/>
|
|
)}
|
|
<TableSettingsMenuAutoRefresh
|
|
value={settings.autoRefreshRate}
|
|
onChange={handleRefreshRateChange}
|
|
/>
|
|
</>
|
|
);
|
|
|
|
function handleRefreshRateChange(autoRefreshRate: number) {
|
|
settings.setAutoRefreshRate(autoRefreshRate);
|
|
}
|
|
}
|