@dt-dds/react-tabs
v1.0.0-beta.105
Published
The Tabs component allows different views/information to be switched easily. If the Tabs run out of space, it will appear horizontal scroll.
Readme
Tabs Package
The Tabs component allows different views/information to be switched easily. If the Tabs run out of space, it will appear horizontal scroll.
Usage
import { Tabs, TabPanel, useTabs } from '@dt-dds/react';
import { Icon } from '@dt-dds/react-icon';
const { activeTab, handleChange } = useTabs(0);
return (
<>
<Tabs activeTab={activeTab} handleChange={handleChange}>
<Tabs.Item icon={<Icon code='menu' />} label='Tab 1' />
<Tabs.Item label='Tab 2' />
<Tabs.Item label='Tab 3' isDisabled />
</Tabs>
</>
);API
Tabs
| Property | Type | Default | Description |
| -------------- | ----------------------- | --------- | ----------------------------------------- |
| children | ReactNode | - | Child components to be rendered |
| dataTestId | string | tabs | Customizable test identifier |
| style | React.CSSProperties | - | Styles to be used in the Tabs |
| activeTab | number | - | Represents the active tab |
| variant | default / contained | default | Defines type of tab |
| handleChange | function | - | When triggered, it changes the active tab |
Tabs.Item
| Property | Type | Default | Description |
| ------------ | ----------- | ------- | ---------------------------------------- |
| label | string | - | Defines the tab label |
| icon | ReactNode | - | Defines the tab icon |
| dataTestId | string | - | Customizable test identifier |
| isDisabled | string | - | Determines the disabled state of the tab |
Stack
- TypeScript for static type checking
- React — JavaScript library for user interfaces
- Emotion — for writing css styles with JavaScript
- Storybook — UI component environment powered by Vite
- Jest - JavaScript Testing Framework
- React Testing Library - to test UI components in a user-centric way
- ESLint for code linting
- Prettier for code formatting
- Tsup — TypeScript bundler powered by esbuild
- Yarn from managing packages
Commands
yarn build- Build the packageyarn dev- Run the package locallyyarn lint- Lint all files within this packageyarn test- Run all unit testsyarn test:report- Open the test coverage reportyarn test:update:snapshot- Run all unit tests and update the snapshot
Compilation
Running yarn build from the root of the package will use tsup to compile the raw TypeScript and React code to plain JavaScript.
The /dist folder contains the compiled output.
tabs
└── dist
├── index.d.ts <-- Types
├── index.js <-- CommonJS version
└── index.mjs <-- ES Modules version
...Versioning
Follows semantic versioning
© License
Licensed under MIT License
