mirror of
https://github.com/portainer/portainer.git
synced 2025-07-24 15:59:41 +02:00
refactor(app): move react components to react codebase [EE-3179] (#6971)
This commit is contained in:
parent
212400c283
commit
18252ab854
346 changed files with 642 additions and 644 deletions
20
app/react/components/Tip/TextTip/TextTip.stories.tsx
Normal file
20
app/react/components/Tip/TextTip/TextTip.stories.tsx
Normal file
|
@ -0,0 +1,20 @@
|
|||
import { Meta, Story } from '@storybook/react';
|
||||
import { PropsWithChildren } from 'react';
|
||||
|
||||
import { TextTip } from './TextTip';
|
||||
|
||||
export default {
|
||||
component: TextTip,
|
||||
title: 'Components/Tip/TextTip',
|
||||
} as Meta;
|
||||
|
||||
function Template({
|
||||
children,
|
||||
}: JSX.IntrinsicAttributes & PropsWithChildren<unknown>) {
|
||||
return <TextTip>{children}</TextTip>;
|
||||
}
|
||||
|
||||
export const Primary: Story<PropsWithChildren<unknown>> = Template.bind({});
|
||||
Primary.args = {
|
||||
children: 'This is a text tip with children',
|
||||
};
|
11
app/react/components/Tip/TextTip/TextTip.test.tsx
Normal file
11
app/react/components/Tip/TextTip/TextTip.test.tsx
Normal file
|
@ -0,0 +1,11 @@
|
|||
import { render } from '@testing-library/react';
|
||||
|
||||
import { TextTip } from './TextTip';
|
||||
|
||||
test('should display a TextTip with children', async () => {
|
||||
const children = 'test text tip';
|
||||
const { findByText } = render(<TextTip>{children}</TextTip>);
|
||||
|
||||
const heading = await findByText(children);
|
||||
expect(heading).toBeTruthy();
|
||||
});
|
27
app/react/components/Tip/TextTip/TextTip.tsx
Normal file
27
app/react/components/Tip/TextTip/TextTip.tsx
Normal file
|
@ -0,0 +1,27 @@
|
|||
import { PropsWithChildren } from 'react';
|
||||
import clsx from 'clsx';
|
||||
|
||||
type Color = 'orange' | 'blue';
|
||||
|
||||
export interface Props {
|
||||
color?: Color;
|
||||
}
|
||||
|
||||
export function TextTip({
|
||||
color = 'orange',
|
||||
children,
|
||||
}: PropsWithChildren<Props>) {
|
||||
return (
|
||||
<p className="text-muted small">
|
||||
<i
|
||||
aria-hidden="true"
|
||||
className={clsx(
|
||||
'fa fa-exclamation-circle',
|
||||
`${color}-icon`,
|
||||
'space-right'
|
||||
)}
|
||||
/>
|
||||
{children}
|
||||
</p>
|
||||
);
|
||||
}
|
1
app/react/components/Tip/TextTip/index.ts
Normal file
1
app/react/components/Tip/TextTip/index.ts
Normal file
|
@ -0,0 +1 @@
|
|||
export { TextTip } from './TextTip';
|
Loading…
Add table
Add a link
Reference in a new issue