1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-07-23 15:29:42 +02:00

refactor(edge/stacks): migrate edit view to react [EE-2222] (#11648)
Some checks are pending
ci / build_images (map[arch:amd64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
ci / build_images (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
ci / build_images (map[arch:arm platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:arm64 platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:ppc64le platform:linux version:]) (push) Waiting to run
ci / build_images (map[arch:s390x platform:linux version:]) (push) Waiting to run
ci / build_manifests (push) Blocked by required conditions
/ triage (push) Waiting to run
Lint / Run linters (push) Waiting to run
Test / test-client (push) Waiting to run
Test / test-server (map[arch:amd64 platform:linux]) (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:1809]) (push) Waiting to run
Test / test-server (map[arch:amd64 platform:windows version:ltsc2022]) (push) Waiting to run
Test / test-server (map[arch:arm64 platform:linux]) (push) Waiting to run

This commit is contained in:
Chaim Lev-Ari 2024-05-09 18:02:20 +03:00 committed by GitHub
parent 27e309754e
commit cd5f342da0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
31 changed files with 847 additions and 499 deletions

View file

@ -1,5 +1,7 @@
import clsx from 'clsx';
import { ReactNode } from 'react';
import { ComponentProps, ReactNode } from 'react';
import { Button } from '@@/buttons';
import styles from './NavTabs.module.css';
@ -8,10 +10,11 @@ export interface Option<T extends string | number = string> {
children?: ReactNode;
id: T;
hidden?: boolean;
icon?: ComponentProps<typeof Button>['icon'];
}
interface Props<T extends string | number> {
options: Option<T>[];
options: Array<Option<T>> | ReadonlyArray<Option<T>>;
selectedId?: T;
onSelect?(id: T): void;
disabled?: boolean;
@ -47,18 +50,16 @@ export function NavTabs<T extends string | number = string>({
>
{/* rule disabled because `nav-tabs` requires an anchor */}
{/* eslint-disable-next-line jsx-a11y/anchor-is-valid */}
<a
<Button
color="none"
onClick={() => handleSelect(option)}
onKeyDown={(e) => {
if (e.key === 'Enter' || e.key === ' ') {
handleSelect(option);
}
}}
role="button"
tabIndex={0}
as="a"
data-cy="nav-tab-button"
className="!flex"
icon={option.icon}
>
{option.label}
</a>
</Button>
</li>
)
)}